专利名称:抽取滤波的方法及装置的制作方法
技术领域:
本发明涉及超声成像中的滤波方法及装置,尤其涉及一种实现任意分数比率抽取 的抽取滤波的方法及装置。
背景技术:
在数字超声诊断系统中,经过波束合成后得到的射频RF&adiofrequency)回波 信号在进行彩色血流成像、脉冲频谱多普勒成像和二维剖面成像之前,均需要对射频信号 进行正交解调处理,射频回波信号首先分别与余弦和正弦相乘,然后经过低通滤波,得到解 调后的I (inphase),Q(quadrature)两路信号,最后对I、Q两路信号进行彩色血流成像、脉 冲多普勒成像和二维剖面成像处理。由于最后用于显示图像的视频采样率比前端数字射频采样率小很多,所以在后续 数字信号处理中不需要使用和射频采样率相同的采样率。高采样率会增大系统软件和硬件 上的负担,却不能够较大改善图像的性能,因此在正交解调过程中,可以将低通滤波器设计 成为抽选低通滤波器,这个滤波器在实现低通滤波的同时降低信号采样率,低通抽选滤波 器针对射频采样率进行了调整,又称为二次采样。当一个数字滤波器的输入采样率是输出采样率的M倍时,我们称其为抽选滤波 器,并称M为抽选比率(decimation rate)。现有的抽选滤波器中,通常是实现整数倍的抽 选,也就是抽选比率M为整数。抽选比率为整数的抽选滤波器的不足是不能够满足超声图像对于抽选比率的精 细调节。在实际情况中,很难保证抽选比率M为整数,尤其是在探测深度较浅的情况下,不 妨假设数字超声成像系统中射频采样率是fs,那么抽选滤波的抽选比率从1变化到2时,进 行信号处理的采样率变化了 1/2 fs ;抽选比率从2变化到3时,进行信号处理的采样率变 化了 1/6 fs;抽选比率从3变化到4时,进行信号处理的采样率变化了 1/12 fs。在深度比 较浅的情况下,信号处理的采样率可以选择档位之间变化太大。在超声图像上表现为深度 调节时,深度的档位跨度较大,不均勻,不能够满足超声图像对于抽选比率的精细调节。因 此,需要一种可以任意分数抽取比率抽取的滤波器,实现抽选比率为任意分数的抽选滤波。
发明内容
本发明的目的在于提供一种能实现任意分数比率抽取的抽取滤波方法和装置,其 可以根据需要实现任意分数比率的抽取滤波,满足超声图像对于精细调节抽选比率的要 求。为了解决上述问题,本发明的一个实施例中,提供了一种用于超声成像的抽取滤 波方法包括存储滤波器系数;将输入信号进行L级锁存,其中L为滤波中使用的乘法累加 器个数;对每一级锁存后的输入信号,从系数存储器中读取其中存储的序号为K的滤波器 系数,与该级锁存后的输入信号进行乘累加计算,其中读取的滤波器系数的序号K由当前 锁存级的输入信号的序号rmm、当前计算的输出信号的序号m、抽取因子D、插值因子I计算获得;将L级锁存的乘累加计算结果累加,得到滤波后的输出信号。针对上述方法,本发明的另一个实施例中,提供了一种用于超声成像的抽取滤波 装置,包括系数存储器,所述系数存储器存储滤波器系数;移位寄存器,对输入信号进行L 级锁存,其中L为滤波器中使用的乘法累加器个数,所述移位寄存器包括串联的L个触发 器,所述L个触发器输出端分别与L个乘法累加器的输入端相连,每个触发器对输入信号进 行一级锁存;L个乘法累加器,所述乘法累加器输入端与所述系数存储器和所述触发器的 输出端相连,每个乘法累加器完成L级锁存中其中一级锁存后的输入信号与滤波器系数的 乘累加计算;控制单元,所述控制单元与系数存储器、移位寄存器和乘法累加器相连,对每 一级锁存后的输入信号,控制单元控制从系数存储器中读取其中存储的序号为K的滤波器 系数,并将所述滤波器系数输出到进行该级锁存的乘累加计算的乘法累加器中进行乘累加 计算,其中读取的滤波器系数的序号K由当前锁存级的输入信号的序号num、当前计算的输 出信号的序号m、抽取因子D、插值因子I计算获得;累加器,用于L个累加乘法累加器的乘 累加计算结果。本发明的实施例中,由当前锁存级的输入信号的序号rmm、当前计算的输出信号的 序号m、抽取因子D、插值因子I计算与输入信号进行滤波计算的滤波器系数的序号,用这些 滤波器系数与输入信号进行滤波计算,而不是所有的滤波器系数与所有插入零值之后的输 入信号进行滤波计算。这样,剔除了插值插入的零值与滤波系数进行滤波计算的项,由原始 输入信号直接与与其对应的滤波器系数乘累加,不仅实现了任意分数比率的抽取滤波,也 减少了计算量,降低了实现这种抽取滤波需要的资源开销。
图1为本发明一个实施例的超声成像系统结构示意图;图2为输入信号插值I后抽取D的示意图;图3为整数D抽取滤波器示意图;图4为本发明任意分数比率抽取滤波器的示意图;图5为本发明一个实施例的任意分数比率抽取滤波器的结构框图;图6为本发明实施例一的抽取比率为9/4的抽取滤波器的结构框图;图7为本发明实施例一的抽取比率为9/4的抽取滤波器的时序图;图8为本发明实施例一的抽取比率为9/4的抽取滤波器的另一种结构框具体实施例方式在数字超声诊断系统的信号处理流程中,彩色血流成像,脉冲多普勒成像和二维 剖面成像等均需要对射频信号进行正交解调处理。射频回波信号首先分别与余弦和正弦相 乘,然后经过低通滤波,得到解调后的I,Q两路信号,再分别对两路IQ信号进行彩色血流成 像,脉冲多普勒成像和二维剖面成像处理。为了减少系统的计算量,需要降低射频信号的采 样率。如图1所示,可以将其中两个低通滤波器设计为两个抽选低通滤波器(其抽选比率 为射频采样率与视频采样率之比,一般大于1),在实现低通滤波的同时实现抽选滤波。不妨假设抽选比率为非整数,即M = D/I时,其中D大于I。为了达到此抽选比率, 设计该抽选滤波器时可以考虑先插值I (在相邻两个抽样点之间插入I-I个抽样值),再抽取D(每隔D-I个抽取出一个)。滤波器结构框图如图2所示。x(n)为输入的信号。其中 个I表示在x(n)的相邻抽样点间补I-I个零点,也就是零值插值,x0 (k)表示插零后的信 号,丨D表示在补零后的信号中抽取D,y(m)表示经过滤波和抽取后的信号,h0(n)代表一个 非抽选滤波器。其中,图2中的滤波和抽取部分可以用一个抽选滤波器代替,如图3所示。 其中hd(n)代表抽选滤波器,此时抽选比率为整数D。假设滤波器的参数已定,并用其单位冲击响应表示为{h(n),n = 0,1,2,... N_l}, 则非抽选滤波器的算法可以表示为
抽选比率为D的抽选滤波器的算法可以表示为 即
(3)由上式可知,抽选比率为D的抽选滤波器的输出实际上相当于在非抽选滤波器的 所有输出中每D个中抽选一个。以上表达式可以继续分解为 其中L为整数,LXD = N。这样分解的好处在于,每个分项均可以用一个乘法累加器实现,一共只需要L个 乘法累加器。一个2L阶非抽选有限冲击响应(FIR)滤波器要用L个乘法器实现。而对于 一个抽选比率为D的FIR滤波器,用L个乘法累加器可以实现LXD阶的FIR滤波。图3所示系统实际上输出y(m)仅与输入χ (η)相关而与中间结果xO (k)无关,因 此可以设计为一个抽选比率为M(M为非整数)的抽选滤波器,如图4所示。根据前述公式(4),插零后的中间信号序列xO (k)经过抽选比率D的抽选滤波器后 输出序列y(m)的表达式可整理为 先考察其中第1项乘累加项(幻。
根据上述插值规则,原始信号序列χ (η)在每相邻信号序列之间插入I-I个零值后 得到中间信号序列x0 (k),因此x0 (k)中有许多零点,中间信号序列只有在x0(0),xO(I), x0 (21),x0 (31) · · ·等序号为I的整数倍时才为非零,此时对应原始输入χ(0), χ (1),χ⑵, x(3)...。在此累加项中,其中的h(k)与插入的零值相乘的结果为零,因此,可以把上式中 h(k)与插入的零值相乘的项省略。由插值后的中间序列与原始序列的关系可知,当(mD-k)为I的整数倍时, x0 (mD-k)项不为零,此时记,!的整数部分为pm, k,当当前计算的输出序列序号m确定 时,其为k的函数。设第1项乘累加项中计算当前输出信号y(m)时参与计算的输入信号的项数为Nm, 则第1项乘累加项可表示为
D-INm-I 其中;£表示将上述Nm个参与计算的输入信号项与其各自对应的h(k)相乘后的 乘积累加,P mD~k 表示向下取整,即Pm, k为mD-A的整数部分,当输出序列序
号m确定时,其为k的函数。由式(6)可见,计算结果与中间结果xO (k)无关,仅与输入信 号x(n)有关。显然k = 0时pm, k值最大,又因为pm, k为整数,令gm为f的整数部分,则pm, k的
最大值与gm相等。因此,对应于当前输出序列y(m),参与第1项乘累加项的输入信号中最 后一个输入信号为x(gm),当x(gm)输入后,意味着第1项乘累加项对应当前输出信号y(m) 的计算结束,当前计算结果输出并清空缓存。下一个输入信号x(gm+l)输入时,第1项乘累 加项对应的计算过程属于y(m+l)的计算过程。计算时输入信号序列X(Ii)是按顺序依次输入的,第1个乘累加项中,对应当前输 出信号y (m),参与计算的输入信号共有Nm个,最后一个为x(gm),即对应当前计算的输出信 号y(m),参入第一个乘累加项计算的输入信号序列为x[gm-(Nm-I) ],x[gm-(Nm-2)],..., x[gm-i],x(gm) °参与计算的每个输入信号对应与冲击响应序列的一个系数(即本发明实施例的 非整数抽选滤波器的系数)相乘,序号为num(比如gm-(Nm-l)、gm-(Nm_2). . . gm_l、gm等)的 输入信号序列对应的冲击响应序列的序号K为mD-numl,因此,由当前输入信号χ (η)的序号 num,按照mXD-numXI即可计算出与当前输入信号相乘的滤波器系数的序号K,其中m为当 前计算的输出信号y(m)的序号。相乘的结果与之前的输入信号和其对应的滤波器系数的 乘积累加,累加结果缓存到缓冲存储器。当计算当前的输出信号y(m)时参与第1个乘累加 项的最后一个输入信号x(gm)输入并乘累加后,将计算结果输出,并将缓冲存储器清零。下 一个输入信号x(gm+l)输入后,开始输出信号y(m+l)的计算过程。
其中,参与第1项乘累加项的输入信号项数Nm可以用下式得到 其中gm为计算当前输出信号y(m)时参与第1项乘累加项计算的最后一个输入信 号的序号,即f的整数部分,gy为计算输出信号y(m-l)时参与第1项乘累加项计算的最
后一个输入信号的序号,即(m^1)D的整数部分。类似地,可以得到其它各项的计算过程 对于第2项乘累加项2>0(历D — 幻K免+ D)。由插值后的中间序列与原始序列的关系可知,当(mD-D-k)为I的整数倍时, x0 (mD-D-k)项不为零,此时记"^一,"^ = ^^^的整数部分为Pnri, k,当输出序列序 号m确定时,其为k的函数。设第2项乘累加项中计算当前输出信号y(m)时参与计算的输入信号的项数为 Nnrl,则第2项乘累加项可表示为 其中$表示将上述Nnri个参与计算的输入信号项与其各自对应的h(k)相乘后
表示向下取整,即Pnrf, k为@ _ 1)£> _ &的整数部分,
当输出序列序号m确定时,其为k的函数。由式(7)可见,计算结果也与中间结果x0(k)无 关,仅与输入信号χ (η)有关。同样,当k = 0时P11^k值最大,又因为Pnri,k为整数,令gy为^^的整数部分,
则Pm-Lk的最大值与gy相等。因此,对应于当前输出序列y(m),参与第2项乘累加项的输 入信号中最后一个输入信号为dgy),当WgM)输入后,意味着第2项乘累加项对应当前 输出信号y(m)的计算结束,当前计算结果输出并清空缓存。下一个输入信号xfey+l)输 入时,第2项乘累加项对应的计算过程属于y (m+1)的计算过程。计算时输入信号序列x(n)按顺序输入,第2个乘累加项中,对应当前输出信号 y(m),参与计算的输入信号共有Nnrl个,最后一个为Wglrt),即对应当前计算的输出信号 y (rn),参入第2个乘累加项计算的输入信号序列为X [gm_「(Nm_「l) ],X [gm_「(Nm_「2)],..., x[gm-「l],X (gm-i) °参与计算的每个输入信号对应与冲击响应序列的一个系数(即本发明实施例的 非整数抽选滤波器的系数)相乘,序号为num(比如Snrl-(Nlrt-I)、gm_「(Nm_「2). . . S1^-Lgnrl 等)的输入信号序列对应的冲击响应序列的序号K为mD-numl,因此,由当前输入信号χ (η) 的序号num,按照mXD-numX I即可计算出与当前输入信号相乘的滤波器系数的序号K,其中m为当前计算的输出信号y(m)的序号。相乘的结果与之前的输入信号和其对应的滤波 器系数的乘积累加,累加结果缓存到缓冲存储器。当计算当前的输出信号y(m)时参与第2 个乘累加项的最后一个输入信号Hgy)输入并乘累加后,即将计算结果输出,并将缓冲存 储器清零。下一个输入信号dgy+l)输入后,第2项乘累加项开始输出信号y(m+l)的计 算过程。 其中,参与第2项乘累加项的输入信号项数Nnrl可以用下式得到
_1] Nnrl = gw-gw其中gy为计算当前输出信号y(m)时参与第2项乘累加项计算的最后一个输入 信号的序号,即("^1P的整数部分,gm_2为计算输出信号y (m-1)时参与第2项乘累加项计
算的最后一个输入信号的序号,即的整数部分。
I同理,可以得到,设第L项乘累加项中计算当前输出信号y(m)时参与计算的输入 信号的项数为凡《,第L项乘累加项可表示为 ^ 其中表示将上述Nm_a_D个参与计算的输入信号项与其各自对应的h(k)
A=O
相乘后的乘积累加,Ami-似=(m~(L-^D~k,U表示向下取整,即P111Hk为
-&的整数部分,当输出序列序号m确定时,其为k的函数。由式⑶可见,计 算结果也与中间结果xO(k)无关,仅与输入信号x(n)有关。同样,当k= 0时Pm^k值最大,又因Spm-(H)^为整数,令%{m-{L~l))D
的整数部分,则Pm-a—D, k的最大值与gm-a—D相等。因此,对应于当前输出序列y (m),参与第 L项乘累加项的输入信号中最后一个输入信号为xfem-a-D),当XfemK)输入后,意味着第 L项乘累加项对应当前输出信号y(m)的计算结束,当前计算结果输出并清空缓存。下一个 输入信号xfem-a-D+l)输入时,第L项乘累加项对应的计算过程属于y(m+l)的计算过程。计算时输入信号序列x(n)按顺序输入,第L个乘累加项中,对应当前输出信 号y(m),参与计算的输入信号共有Nm_a_D个,最后一个为Hgm^)),即对应当前计算 的输出信号y(m),参入第L个乘累加项计算的输入信号序列为=Xtgm-(L-D-(NmK)-I)],
X[gm-(L-l)_(Nm—(L—1厂2) ],· · ·,X[gm-(L-I)~l],X(gm—(L-1))。参与计算的每个输入信号对应与冲击响应序列的一个系数(即本发明实施例的 非整数抽选滤波器的系数)相乘,序号为num(比如gd-D-(Ικ-Ι) >gffl-(L-1)-(Nffl_(L_1)-2)… g^a-D-U gffl-(L-1)等)的输入信号序列对应的冲击响应序列的序号K为mD-numl,因此,由当 前输入信号x(n)的序号num,按照mXD-numXI即可计算出与当前输入信号相乘的滤波器
系数的序号K,其中m为当前计算的输出信号y(m)的序号。相乘的结果与之前的输入信号 和其对应的滤波器系数的乘积累加,累加结果缓存到缓冲存储器。当计算当前的输出信号 y(m)时参与第L个乘累加项的最后一个输入信号X(S111K)输入并乘累加后,将计算结果 输出,并将缓冲存储器清零。下一个输入信号xfem-a-D+l)输入后,第L项乘累加项开始输 出信号y(m+l)的计算过程。其中,参与第L项乘累加项的输入信号项数Nm_a_D可以用下式得到Nm-(H) = gm_ (Hrgm-L其中SmK为计算当前输出信号y(m)时参与第L项乘累加项计算的最后一个输 入信号的序号,即的整数部分,gffl-L为计算输出信号y (m-1)时参与第L项乘累
加项计算的最后一个输入信号的序号,即一一7Z)D的整数部分。如前所述,当各个乘累加项的参与计算当前输出信号y(m)的最后一个输入信号 输入并乘累加后,各个乘累加项的计算结果输出,各缓冲存储器清零。将各个乘累加项输出 的计算结果累加,即得到当前输出信号y(m)的计算结果。因此,如图4所示,可以直接设计为非整数抽选比率的抽选滤波器h(n)。其输出 y(m)可以表示为 式(9)中各符号的意义与前文中相同。如图5所示,为本发明任意比率抽选滤波器的一个实施例的框图,其中式(9)中每 一个乘累加项用一个乘法累加器实现,乘法累加器1实现第1项乘累加项的计算,乘法累加 器2实现第2项乘累加项的计算,以此类推,乘法累加器L实现第L项乘累加项的计算。由前述各累加项的计算说明可以看出,计算当前输出信号y(m)时,参与第2累加 项的输入信号与计算输出信号y (m-1)时参与第1累加项计算的输入信号相同,参与第3累 加项计算的输入信号与计算输出信号y (m-Ι)时参与第2累加项计算的输入信号相同,以此 类推,同样的,计算当前输出信号y(m)时参与每个累加项计算的输入信号都与相邻的前一 累加项计算y (m-Ι)时参与的输入信号相同。也就是第2项累加项的输入信号是第一项累 加项的输入信号锁存后的信号,第3项累加项的输入信号是第2项累加项输入信号锁存后 的信号,以此类推,每个累加项的输入信号都是前一累加项的输入信号锁存后的信号。因此,在本实施例中,对输入信号进行L级锁存。如图5所示,输入序列x(n)按顺 序依次输入移位寄存器104,然后分别进入各个乘法累加器。移位寄存器104包括L个触发 器,输入的χ (η)通过触发器D1,触发器Dl完成第0级锁存,经过了触发器Dl (即经过了第 0级锁存)后的输入信号输入第1个乘法累加器,同时也输入到触发器D2后,触发器D2完 成第1级锁存,经过了触发器D2(即经过了第1级锁存)后的输入信号输入乘法累加器2,
同时也输入至触发器D3......以此类推,直到经过触发器DL输入乘法累加器L,触发器DL
完成第L-I级锁存。每一级锁存后的输入信号均在对应的乘法累加器中与相应的滤波器系数进行乘累加计算,L级锁存中其中一级锁存后的输入信号与相应滤波器系数的乘累加计 算,即对应完成式(9)中的一项乘累加项的计算,第0级锁存后的乘累加计算对应式(9)中 第1项乘累加项,第1级锁存后的乘累加计算对应式(9)中第2项乘累加项,以此类推,第 L-I级锁存的乘累加计算对应式(9)中第L项乘累加项。其中,触发器Dl DL可以是D触发器,也可以是其它可以实现输入信号锁存的触 发器。本发明的一个实施例中,把滤波器系数存储于系数存储器108中,对每一级锁存 后的输入信号,从系数存储器108中读取其中存储的与当前输入信号对应的序号为K的滤 波器系数,与该级锁存后的输入信号进行乘累加计算,其中对于某一级锁存后的输入信号, 读取的对应的滤波器系数的序号K可以由当前锁存级的输入信号的序号num、当前计算的 输出信号的序号m、抽取因子D、插值因子I计算获得。这样,在计算的时候,并不是所有的 滤波器系数与所有插入零值之后的输入信号乘累加,而是剔除了插值插入的零值与滤波系 数乘累加的项,由原始输入信号直接与与其对应的滤波器系数乘累加,不仅实现了任意分 数比率的抽取滤波,也减少了计算量,降低了实现这种抽取滤波需要的资源开销。本发明的一个实施例中,可以把滤波器的系数(即冲击响应序列)分为L组,设
f约分后的最简式的分子为T,则每组T个系数,一组滤波器系数存储于一个系数存储区域
中,共包括L个系数存储区域,每个系数存储区域对应一个乘法累加器,也就是对应一级锁 存后的乘累加计算,每个系数存储区域中存储的系数为其对应的锁存后的乘累加计算(即 该级锁存对应的乘法累加器)需要使用的滤波器系数。其中,每个存储区域中存储的滤波 器系数的序号k可以按照下面的方式计算k = uXD-vXI(10)其中u、v为大于或等于零的整数,且gu_t-[Nu_t_l]彡ν彡gu_t,其中gu_t为^^ 的整数部分,Nu_t = gu_t-gu_t_10这样,在存储区域中只存储了在滤波过程中需要使用到的滤波器系数(即与原始 输入信号对应的滤波器系数),而不包括仅与插值插入的零值对应的滤波器系数,减少了滤 波器需要的存储空间。系数存储器中存储了其对应的乘法累加器使用的滤波器系数。输入信号输入乘法 累加器,从系数存储器中读出相应的序号为K的滤波器系数与输入信号相乘,并和之前的 输入信号与与其对应的滤波系数相乘的乘积累加。如前文所述,可以由当前输入信号χ (η) 的序号num,按照mXD-numXI计算出与当前输入信号相乘的滤波器系数的序号K,其中m 为当前计算的输出信号y(m)的序号。本发明的一个实施例中,每个乘法累加器对应有一个缓冲存储器(B1、B2、. . . BL), 每个乘法累加器的乘累加计算结果缓存在缓冲存储器中。由前文所述可以看出,对于一个乘法累加器或乘累加项,随着输入信号的依次输
入,其使用的滤波器系数是循环的,因此,在本发明的一个实施例中,可以按照式(10)的方
法,按照所述U从零开始由小到大的顺序依次取值、同时对于每个u的取值其中的V按从小
到大的顺序依次取值计算滤波器系数的序号,然后按照序号计算的顺序将计算出的序号对
应的滤波器系数在存储区域中依次存储,当读取系数时,对此存储区域中的滤波器系数从
11开始位置依次读取即可,当最后一个系数读取后,返回开始位置继续读取,如此循环读取即 可。这样,可以很方便的对存储区域中的滤波器系数进行读取操作。由前文所述可知,对于第t级锁存后的乘累加计算,当输入信号的序号等于gm_t,
即等于 ^ ^的整数部分时,说明此输入信号为计算当前输入信号y (m)时,参与此第t级
锁存后的乘累加计算的最后一个输入信号。此时,将此输入信号进行乘累加计算后,输出该 第t级锁存的乘累加计算结果,然后将该第t级锁存的乘累加计算结果清零当各个乘累加器中参与计算当前输出信号y(m)的最后一个输入信号均输入并乘 累加后,各个缓冲存储器中存储的乘累加计算结果输出,各缓冲存储器清零。然后将各个 乘累加器输出的乘累加计算结果输入累加器106进行累加,得到的结果即为当前输出信号
y(m)的计算结果。当第0级锁存级锁存后的输入信号的序号等于f的整数部分并乘累加
完成时,各个乘累加器中参与计算当前输出信号y(m)的最后一个输入信号即均已输入并 完成乘累加,此时,将所有L级锁存的乘累加计算结果(即L个乘累加器的乘累加计算结 果)累加并输出,此输出的累加值即为滤波后的输出信号y(m)。然后,随着下一个输入信号 的输入,开始输出信号y(m+l)的计算过程。前述各个输入信号的寄存、滤波器系数的循环输出、乘累加器的计算、缓存、数据 输出和缓冲存储器清零、结果累加输出等动作由其中的控制单元进行控制。另外,在本发明另外的实施例中,也可以将滤波器系数存储在一个存储器中,每 个滤波器系数对应一个存储地址。由前述可知,与输入信号对应的滤波器系数的序号由 mXD-numXI计算得到,其中m为当前计算的输出信号y(m)的序号,num为前输入信号χ (η) 的序号。因此,此存储器中存储的滤波器系数的序号满足条件k = uXD-vX I,其中u、v为 大于或等于零的整数。当输入信号输入时,由控制单元按照前述计算当前输入信号对应的滤波器系数序 号的方法(即按照mXD-numXI计算出与当前输入信号相乘的滤波器系数的序号,其中m 为当前计算的输出信号y(m)的序号)计算对应的滤波器系数的序号K,并从存储器中存储 此序号K对应的滤波器系数的存储地址中读取此序号对应的滤波器系数,输出到各自的乘 法累加器中进行计算。当然,也可以将所有的滤波器系数均存储于存储器中,当输入信号输入时,由控制 单元按照前述计算当前输入信号对应的滤波器系数序号的方法(即按照mXD-numX I计算 出与当前输入信号相乘的滤波器系数的序号,其中m为当前计算的输出信号y(m)的序号) 计算对应的滤波器系数的序号K,并从存储器中存储此序号K对应的滤波器系数的存储地 址中读取此序号对应的滤波器系数,输出到各自的乘法累加器中进行计算。下面通个四个具体实施例来说明本发明所述实现分数抽选比率的数字抽选滤波 方法。实施例一不妨假设输入信号X(Ii)的采样率为40MHz,现需要降低采样率至160/9MHz,累加 器个数L = 2,则该抽选滤波器的抽选比率M = 9/4,即插值I = 4,抽取D = 9,根据上述相 关推导出的公式可知
12
1)对于第1个乘累加项,8111为$ = ^~的整数部分,第m个输出序列y(m)对应的
I 4
最后一个输入信号序列为x(gm);
gQ = 0,故第0个输出y (0)对应最后一 gl = 2,故第1个输出y(l)对应最后一 g2 = 4,故第2个输出y (2)对应最后一 而=6,故第3个输出7(3)对应最后一 & = 9,故第4个输出7(4)对应最后一 g5 = 11,故第5个输出y (5)对应最后-g6 = 13,故第6个输出y (6)对应最后-g7= 15,故第7个输出y (7)对应最后-
0100] 0101] 0102]
0103]
0104]
0105]
0106]
0107]
0108]·
0109]·
0110]·
0111] 对于第二个乘累加项,gy为(m〗1)£>的整数部分,第m个输出序列y (m)对应的最 后一个输入信号序列为dgM);
个输入序列为χ(0) 个输入序列为χ (2) 个输入序列为χ (4) 个输入序列为χ (6) 个输入序列为χ (9) -个输入序列为x(ll) -个输入序列为χ(13) -个输入序列为χ(15)
0112]m =0时,Sm-I=g-i,无意义,因此第0个输出y (0)时第二个乘累加项没有输入0113]m =1时,gm-1=go=0,故第1个输出y(l)对应最后一-个输入序列为χ(0);0114]m =2时,gm-1=Sl=2,故第2个输出y(2)对应最后一-个输入序列为χ (2);0115]m =3时,gm-1=S2=4,故第3个输出y (3)对应最后一-个输入序列为χ (4);0116]m =4时,gm-1=S3=6,故第4个输出y(4)对应最后一-个输入序列为χ (6);0117]m =5时,gm-1=S4=9,故第5个输出y (5)对应最后一-个输入序列为χ (9);0118]m =6时,gm-1=S5=11,故第6个输出y(6)对应最后-一个输入序列为x(ll);0119]m =7时,gm-1=S6=13,故第7个输出y (7)对应最后-一个输入序列为χ(13);0120]m =8时,gm-1=S7=15,故第8个输出y(8)对应最后-一个输入序列为χ(15);
0121] 0122]
0123]
0124]
0125]
0126]
0127]
0128]
0129]
0130]
0131]
0132]
0133]
2)第1个乘累加项中,第m个输出序列y(m)对应非零项为Nm = gm-gm_ 第1个输出y(l)对应非零项项数为=N1 = gl-g0 = 2-0 = 2 第2个输出y(2)对应非零项项数为=N2 = g2-gl = 4-2 = 2 第3个输出y(3)对应非零项项数为=N3 = g3-g2 = 6-4 = 2 第4个输出y (4)对应非零项项数为=N4 = g4-g3 = 9-6 = 3 第5个输出y(5)对应非零项项数为=N5 = g5-g4 = 11-9 = 2; 第6个输出y(6)对应非零项项数为=N6 = g6-g5 = 13-11 = 2 ; 第7个输出y(7)对应非零项项数为=N7 = g7-g6 = 15-13 = 2 ;
13
·第2个乘累加项中,第m个输出序列y(m)对应非零项为Nm-1 ^m
第2个输出y (2)对应非零项项_ 为=N1=Srg0 =2-0 =2 ;
第3个输出y (3)对应非零项项_t为=N2=g2"gl =4-2 =2 ;
第4个输出y(4)对应非零项项_t为=N3=g3"g2 =6-4 =2 ;
第5个输出y(5)对应非零项项_t为=N4=g4"g3 =9-6 =3 ;
第6个输出y(6)对应非零项项_t为=N5=g5-g4 =11-9 ==2 ;
第7个输出y (7)对应非零项项_t为=N6=g6-g5 =13-11=2 ;
第8个输出y(8)对应非零项项_女为=N7=g7-g6 =15-13=2 ;···3)第1个累加项对应的输入信号序列为x[gm-(Nm-l)],x[gm-(Nm_2)],..., x[gm-i],x(gm);第2个累加项对应的输入信号序列为:x[g^-(Nffl-!-!)]' x[gm-i-(Nffl-1-2)]; · · ·, x[gm-「l],X (gm-i) °4)输入信号χ (η)的序号为num,对应冲击响应序列的序号可以表示为mD-numI, 对应冲击响应可表示为h(mXD-numXI)对于第1个乘累加项第0个输出y(0)对应第1个乘累加项的输入信号序列为x(0),其对应系数为 h(0);第1个输出y (1)对应输入信号序列为:x (1),χ (2);对应系数分别为h (5),h (1)第2个输出y (2)对应输入信号序列为=x(3),x(4);对应系数分别为h(6),h(2)第3个输出y (3)对应输入信号序列为:x(5),x(6);对应系数分别为h (7),h (3)第4个输出y (4)对应输入信号序列为=x(7) ,χ (8),χ(9);对应系数分别为h(8), h(4),h(0);第5个输出 h(l);第6个输出
h(2);第7个输出 h(3);···对于第2个乘累加项第0个输出y(0)第2个乘累加项没有输入信号序列;第1个输出y(l)对应第2个乘累加项输入信号序列为x(0),其对应系数为 h(9);
第2个输出y(2)对应输入信号序列为x(1),χ(2);对应系数分别为h(14), h(10);第3个输出y(3)对应输入信号序列为x(3),x(4);对应系数分别为h(15), h(ll);第4个输出y(4)对应输入信号序列为x(5),χ(6);对应系数分别为h(16), h(12);第5个输出y(5)对应输入信号序列为:x (7), χ (8), χ (9);对应系数分别为h (17), h(13),h(9);第6个输出y(6)对应输入信号序列为x(10),x(ll);对应系数分别为h(14), h(10);第7个输出y (7)对应输入信号序列为x(12),x(13);对应系数分别为h(15), h(ll);第8个输出y(8)对应输入信号序列为:x(14), x(15);对应系数分别为h(16), h(12);···根据上面公式计算得知,第1个乘法累加器和第2个乘法累加器的输出序列和输 入序列关系可以用下面的式子表示乘法累加器1乘法累加器2
y(0)=x(0)h(0)+0
y⑴=x(2)h(l)+x(l)h(5)+χ (0)h(9)
y⑵=χ (4) h (2)+χ (3) h (6)+x(2)h(10)+x(l)h(14)
y⑶=χ (6) h (3)+χ (5) h (7)+χ (4)h(ll)+x(3)h(15)
y⑷=χ (9) h (0) +χ (8) h (4) +χ (7) h (8)+χ (6) h (12)+χ (5) h (16)
y(5)=x(ll)h(l)+x(10)h(5)+χ (9) h (9) +χ (8) h (13) +χ (7) h (17)
y(6)=χ (13) h (2)+χ (12) h (6)+x(ll)h(10)+x(10)h(14)
y(7)=χ (15) h (3)+χ (14) h (7)+x(13)h(ll)+x(12)h(15)····· ·本实施例的框图如图6所示。其中乘法累加器1计算第1项乘累加项,乘法累加 器2计算第2项乘累加项。由前所述,滤波器系数分为L组,每组T个系数,本实施例中,L = 2,T = 9。因 此,本实施例中,滤波器系数分为2组,每组9个系数。第一组系数包括h (0)、h (5)、h (1)、 h (6)、h (2)、h (7)、h (3)、h (8)、h ⑷,存储于系数存储器 1,按照 h (0)、h (5)、h ⑴、h (6)、 h⑵、h (7)、h (3)、h (8)、h (4)的顺序存储,随着输入信号的输入,按照h (0)、h (5)、h⑴、 h (6)、h (2)、h (7)、h (3)、h (8)、h (4)的顺序依次输出至乘法累加器1,即χ (0)输入乘法累加 器1时,输出h(0)至乘法累加器l,x(l)输入乘法累加器1时,输出h(5)至乘法累加器1,
15χ(2)输入乘法累加器1时,输出h(l)至乘法累加器1,依次类推,当最后一个h(4)输出至 乘法累加器1后,下一次输出的系数又从h(0)开始一次输出。如此循环输出。第二组系数包括h (9)、h (14)、h (10)、h (15)、h (11)、h (16)、h (12)、h (17)、h (13), 存储于系数存储器2,与系数存储器1中的系数类似,系数存储器2中的系数随着输入乘法 累加 2 的输入信号,按照 h (9)、h (14)、h (10)、h (15)、h (11)、h (16)、h (12)、h (17)、h (13)的 顺序循环输出至乘法累加器2。本实施例的时序图如图7所示。其中CLK为寄存器的时钟,这里设定系统起始时 钟CLK = 0,系数存储器1的控制时钟CHl高电平时,系数存储器1中的滤波器系数开始循 环输出,当CLK = 0时刻CHl开始变成高电平;系数存储器2的控制时钟CH2高电平时,系 数存储器2中的滤波器系数开始循环输出,CH2相对于CHl延迟一个时钟变成高电平,即当 CLK = 1时刻开始变成高电平;乘法累加器1在ALUCLK1上升沿输出并清零,乘法累加器2 在ALUCLK2上升沿输出并清零,加法器在ADDCLK上升沿进行加法运算,本实施例中,当CLK =gm+l,gm = 0,2,4,6,9,11,13,15. . .,m = 0,1,2,3...时乘法累加器 1 输出并清零,在 CLK =gm+2时乘法累加器2输出并清零,在CLK = gm+l时加法器进行加法运算并输出。图8所示为本实施例中可以采用的另一种结构的抽选滤波器,考虑到滤波器系数 的对称性,第二组滤波系数 h (9)、h (14)、h (10)、h (15)、h (11)、h (16)、h (12)、h (17)、h (13) 的值实际上是分别与h (8)、h (3)、h (7)、h (2)、h (6)、h⑴、h (5)、h (0)、h (4)相等的,因此, 此时,仅需在系数存储器中存储9个系数,由控制单元通过选择存储单元的地址来控制滤 波器系数的输出。对于乘法累加器1和乘法累加器2,分别根据其从触发器Dl和D2输入的 输入信号的序号num,以及当前计算的输出信号的序号m按照K = mXD-numX I计算需要 输出的滤波器系数的序号。比如,当前计算的输出信号为y(l),则m= 1,对于第1个乘法 累加器,输入信号为x(l)时,num = 1,本实施例中,D = 9,I = 4,则K = 1X9-1X4 = 5, 因此,从系数存储器中读取h (5)输入到乘法累加器1 ;当输入信号为χ (2)时,num = 2,则 K= 1X9-2X4 = 1,则从系数存储器中读取h(l)输入到乘法累加器1。对于第2个乘法 累加器,输入信号为x(0)时,num = 0,则K= 1X9-0X4 = 9,则从系数存储器中读取h (9) 输入到乘法累加器2。这样,仅需要存储9个系数即可,可以减少滤波器系数的存储单元。当然,也可以所有18个系数均存储于系数存储器中,然后由控制单元分别选择读 取相应的系数输出至乘法累加器1和乘法累加器2。实施例二不妨假设输入信号X(Ii)的采样率为40MHz,现需要降低采样率至160/10MHZ,累加 器个数L = 2,则该抽选滤波器的抽选比率M= 10/4,即插值I = 4,抽取D= 10,M= 10/4 约分后为5/2,因此T = 5,该抽选滤波器的结构与图6所示的实施例一的结构类似,仅滤波 器系数不同。滤波器系数的计算方法参照实施例一,每组滤波器系数包含5个系数,第一组 滤波器系数为h (0)、h (6)、h (2)、h (8)、h (4),第2组滤波器系数包含h (10)、h (16)、h (12)、 h(18)、h(14)。各组滤波器系数分别存储于系数存储器1和系数存储器2,并按顺序循环输 出至乘法累加器1和乘法累加器2。当然,此实施例也可以将所有系数存储于一个存储器中,由控制单元从中读取当 前各乘法累加器当前输入信号对应的系数。
实施例三假设输入信号x(n)的采样率为40MHz,现需要降低采样率至160/llMHz,累加器个 数L = 2,则该抽选滤波器的抽选比率M= 11/4,即插值I = 4,抽取D = 11,M = 11/4约 分后仍为11/4,因此,T = 11。同理,该抽选滤波器的结构也与图6类似,但是滤波器系数不同,系数的计算方法 参照实施例一,第一组滤波器系数按照顺序h(0),h(7),h(3),h(10),h(6),h(2),h(9), h (5),h (1),h ⑶,h (4)循环,第二组滤波器系数按照顺 h (11),h (18),h (14),h (21),h (17), h (13),h (20),h (16),h (12),h (19),h (15)循环。实施例四假设输入信号χ (η)的采样率为40MHz,现需要降低采样率至160/8MHz,累加器个 数L = 2,则该抽选滤波器的抽选比率M = 8/4,即插值I = 4,抽取D = 8,M = 8/4约分后 为2/1,因此,T = 2。同理,系数的计算方法参照实施例一,第一组滤波器系数按照顺序h(0),h (4)循 环,第二组滤波器系数按照顺序h (8),h(12)循环。以上通过具体的实施例对本发明进行了说明,但本发明并不限于这些具体的实施 例。本领域技术人员应该明白,还可以对本发明做各种修改、等同替换、变化等等,这些变换 只要未背离本发明的精神,都应在本发明的保护范围之内。此外,以上多处所述的“一个实 施例”表示不同的实施例,当然也可以将其全部或部分结合在一个实施例中。
权利要求
一种用于超声成像的抽取滤波方法,包括存储滤波器系数;将输入信号进行L级锁存,其中L为滤波中使用的乘法累加器个数;对每一级锁存后的输入信号,从系数存储器中读取其中存储的序号为K的滤波器系数,与该级锁存后的输入信号进行滤波计算,其中读取的滤波器系数的序号K由当前锁存级的输入信号的序号num、当前计算的输出信号的序号m、抽取因子D、插值因子I计算获得;将L级锁存的乘累加计算结果累加,得到滤波后的输出信号。
2.如权利要求1所述的抽取滤波方法,其特征在于所述存储滤波器系数中,将系数存 储在L个存储区域,每个存储区域存储与L级锁存中其中一级锁存后的输入信号进行乘累 加计算的滤波器系数。
3.如权利要求2所述的抽取滤波方法,其特征在于每个存储区域存储T个滤波器系 数,其中T为D/I约分后最简式的分子,其中存储与第t级锁存后的输入信号进行乘累加计 算的滤波器系数的存储区域中,存储的滤波器系数的序号k满足k = uXD-vX I,其中u、v为大于或等于零的整数,且gu-t_[Nu_t-l] ( ν ( gu_t,其中gu_t为^^的整数部分,Nu_t =gu-t-gu-H,D为抽取因子,I为插值因子,t为当前锁存级的级数,其中锁存级的级数由0到 L-I依次增加。
4.如权利要求3所述的抽取滤波方法,其特征在于所述存储区域中,存储的滤波器系数的序号k由所述u从零开始由小到大的顺序依次 取值、对于每个u的取值其中所述ν按从小到大的顺序依次取值计算,滤波器系数按照所述 序号计算的顺序在所述系数存储区域中顺序存储,读取滤波器系数时,按照所述存储的顺 序依次循环读取。
5.如权利要求1所述的抽取滤波方法,其特征在于所述存储滤波器系数中,其中存储 的滤波器系数的序号k满足k = uXD-vX I,其中u、v为大于或等于零的整数,D为抽取因 子,I为插值因子。
6.如权利要求1至5任意一项所述的抽取滤波方法,其特征在于所述从系数存储器 中读取的滤波器系数的序号K = mXD-numX I,其中rmm为当前锁存级的输入信号的序号、 m为当前计算的输出信号的序号、D为抽取因子、I为插值因子。
7.如权利要求1所述的抽取滤波方法,其特征在于进一步包括将每一级的锁存后的输入信号与滤波器系数的乘累加结果缓冲存储到数据缓存器。
8.如权利要求1或6所述的抽取滤波方法,其特征在于进一步包括当第t级锁存后的输入信号的序号等于0^的整数部分时,此输入信号乘累加计算后输出该第t级锁存的乘累加计算结果,然后将该第t级锁存的乘累加计算结果清零,其中m为当前计算的输 出信号的序号、D为抽取因子、I为插值因子,t为当前锁存级的级数,其中锁存级的级数由 0到L-I依次增加。
9.如权利要求1所述的抽取滤波方法,其特征在于当第0级锁存级锁存后的输入信号的序号等于一「的整数部分时,此输入信号乘累加计算完成后,将L级锁存的乘累加计算结果累加并输出。
10.一种用于超声成像的抽取滤波装置,包括 系数存储器,所述系数存储器存储滤波器系数;移位寄存器,对输入信号进行L级锁存,其中L为滤波器中使用的乘法累加器个数,所 述移位寄存器包括串联的L个触发器,所述L个触发器输出端分别与L个乘法累加器的输 入端相连,每个触发器对输入信号进行一级锁存;L个乘法累加器,所述乘法累加器输入端与所述系数存储器和所述触发器的输出端相 连,每个乘法累加器完成L级锁存中其中一级锁存后的输入信号与滤波器系数的乘累加计 算;控制单元,所述控制单元与系数存储器、移位寄存器和乘法累加器相连,对每一级锁存 后的输入信号,控制单元控制从系数存储器中读取其中存储的序号为K的滤波器系数,并 将所述滤波器系数输出到进行该级锁存的乘累加计算的乘法累加器中进行乘累加计算,其 中读取的滤波器系数的序号K由当前锁存级的输入信号的序号num、当前计算的输出信号 的序号m、抽取因子D、插值因子I计算获得;累加器,用于L个累加乘法累加器的乘累加计算结果。
11.如权利要求10所述的抽取滤波装置,其特征在于所述系数存储器包括L个存储 区域,每个存储区域的输出端分别与一个乘法累加器的输入端连接,每个存储区域存储与L 级锁存中其中一级锁存后的输入信号进行乘累加计算的系数。
12.如权利要求11所述的抽取滤波装置,其特征在于所述每个存储区域存储T个滤 波器系数,其中T为D/I约分后最简式的分子,其中存储的滤波器系数的序号k满足k =uXD-vXI,其中u、v为大于或等于零的整数,且gu_t-[Nu_t-l]彡ν彡gu_t,其中gu_t为·^^的整数部分,Nu_t = gu_t-gu_t_l,D为抽取因子,I为插值因子,t为当前锁存级的级数,其中 锁存级的级数由0到L-I依次增加。
13.如权利要求12所述的抽取滤波装置,其特征在于所述每个存储区域的T个系数 循环读取。
14.如权利要求13所述的抽取滤波装置,其特征在于所述系数存储器中存储的滤波 器系数的序号k满足k = uXD-vX I,其中u、ν为大于或等于零的整数,D为抽取因子,I 为插值因子。
15.如权利要求10至14任意一项所述的抽取滤波装置,其特征在于所述从系数存储 器中读取的滤波器系数的序号为K = HiXD-MimX I,其中num为当前锁存级的输入信号的序 号、m为当前计算的输出信号的序号、D为抽取因子、I为插值因子。
16.如权利要求10所述的抽取滤波装置,其特征在于还包括L个数据缓存器,每个数 据缓存器的输入端分别与一个乘法累加器的输出端相连,且每个数据缓存器与控制单元相 连,乘法累加器乘累加计算结果输出到数据缓存中缓存。
全文摘要
本发明公开了一种用于超声成像的抽取滤波方法及装置,包括存储滤波器系数;将输入信号进行L级锁存,其中L为滤波中使用的乘法累加器个数;对每一级锁存后的输入信号,从系数存储器中读取其中存储的序号为K的滤波器系数,与该级锁存后的输入信号进行乘累加计算,其中读取的滤波器系数的序号K由当前锁存级的输入信号的序号num、当前计算的输出信号的序号m、抽取因子D、插值因子I计算获得;将L级锁存的乘累加计算结果累加,得到滤波后的输出信号。本发明的抽取滤波方法及装置剔除了插值插入的零值与滤波系数乘累加的项,由原始输入信号直接与与其对应的滤波器系数乘累加,不仅实现了任意分数比率的抽取滤波,也减少了计算量。
文档编号A61B8/00GK101919706SQ200910107969
公开日2010年12月22日 申请日期2009年6月12日 优先权日2009年6月12日
发明者李勇, 靳珊 申请人:深圳迈瑞生物医疗电子股份有限公司