一种延时参数实时计算和流水线的多波束合成方法
技术领域
本发明涉及一种多波束合成方法,尤其涉及一种延时参数实时计算和流水线的多波束合成方法,该方法可以应用于各种类型的探头。
背景技术
随着超声临床医学诊断设备对快速、实时成像的要求越来越高,多波束成像成为提高超声扫查速度的必要手段。在传统的单波束合成中,帧频收到超声传播速度和扫描深度的限制,无法满足高质量图像显示的要求。
多波束技术可以在一次脉冲发射过程中,同时形成M条有效接收声束信号,因此使得帧频提高了M倍。多波束技术的应用可以使得在同一系统同等线密度下提高帧频,或者在同等帧频下获得更高的图像扫描线密度。因此多波束技术对于提高图像帧频和质量有着至关重要的意义。
由于多波束技术在超声成像系统中的重要价值,国内外都已有很多关于多波束的设计方案和专利。本专利是在已有专利201010133657.7基础上给出的一种改进,通过本专利的改进,使得FPGA实现可以节约宝贵的乘法器资源。
该发明的一个特点是,将计算延时的参数分成两类,一是需要实时计算的参数,二是不需要实时计算的参数。在延时计算中尽量将不需要实时计算的参数归为输入参数,以减少实时计算的工作量。
另一个特点是,将和波束序号有关的计算模块与波束序号无关的计算模块分离,通过两个开关的切换使得延时参数单元可以应用于凸阵探头、线阵探头以及相控阵探头。该延时计算单元采用了流水线设计,M个波束的延时参数以流水线方式在计算单元中算出,然后对同一路回波数据存储单元进行读取,以实现各波束的延时。大大减少了FPGA中资源的消耗。
在多波束系统设计中,延时参数的存储量很大,所以实时计算延时参数被广泛采用。实时运算对硬件资源的要求较高,所以我们需要找到一种既能实时运算又能节省硬件资源的有利方法。在专利201010133657.7中每个延时参数计算单元采用了三个乘法器、一个开平方运算器、两个加法器和一个减法器。在FPGA实现中,乘法器是很有限的资源,减少乘法器将使得资源占用大大降低,使得FPGA实现更为容易。
发明内容
本发明要解决的技术问题是提供一种延时参数实时计算和流水线的多波束合成方法,本发明是在已经申请的专利(专利申请号:201010133657.7)基础之上给出了一种改进的延时计算方法。该方法在原有方法的基础上经过优化,得出了一种更加简单、使用资源更少的方案,本发明为解决上述技术问题所采用的技术方案为:
一种延时参数实时计算和流水线的多波束合成方法,其至少有一个多波束合成装置,一个多波束合成装置接受一个通道的超声回波,一个通道的超声回波有M个不同扫描角度或扫描位置的波束,包括以下步骤:
A.每一个多波束合成装置分别将回波数字信号线性的写入双端口RAM或三端口RAM;
B.根据当前通道对应的阵元参数以及焦点位置参数分时计算出同一通道内M路波束的延时参数,再换算成RAM的读出地址;延时参数计算公式为:λi=(L+X)2+(K2+K3)·Y]]>
延时表示为:τi=(L-λi)c]]>
延时换算成采样脉冲单位:ni=(L-λi)cFs]]>
针对不同探头的输入参数形式:
探头
K2
K3
X
Y
凸阵
L
R
0
2R(1-cos(θi-θr))
线阵
0
1
0
(xi-xr)2
相控阵
L
0
xi
-2xi(1+sinθr)
其中:λi为从阵元i到焦点F的声程、R——曲率半径、L——焦距、θr——接收线与孔径中心发射的夹角、θi——第i阵元与孔径中心发射的夹角、xi——第i阵元距离孔径中心的间距、xr——接收线与孔径中心的距离、c——声速,在人体组织中近似为1540m/s,
C.在一次写周期的时间内,按照计算出的读出地址轮流从RAM中读出经过延时的回波数据,产生M路延时信号输出;
D.将同一通道内产生的M路延时信号输出分时的通过一个插值单元和一个加权单元;
E.将所有多波束合成装置产生的第一个波束叠加为第一合成波束,
将所有多波束合成装置产生的第二个波束叠加为第二合成波束,
……
将所有多波束合成装置产生的第M个波束叠加为第M合成波束,
上述M个波束的波束叠加操作分时的在同一个求和单元流水线式完成;
F.输出的M路波束信号仍然以分时复用的方式传往下一级求和单元或进行信号处理和图像处理。
所述的双端口RAM或三端口RAM的读出频率是写入频率的M倍。
专利201010133657.7是采用延时参数实时计算的方案和流水线方式工作,通过模式控制和输入参数配置,使得延时参数设计单元可以适用于凸阵、线阵和相控阵探头。但在延时单元的计算中采用了三个乘法器,两个加法器一个减法器和一个开平方运算。本发明是在专利201010133657.7基础之上提供了一个改进的延时参数计算方法,本发明延时参数计算单元采用了两个乘法器,三个加法器和一个开平方运算,比之原有方案减少了一个乘法器,在每片FPGA处理16个信号通道的情况下,可以节约16个乘法器,因此,可以用更低的成本实现多波束技术。
本发明采用延时参数实时计算和流水线作业方式,可以有效的降低资源占用和减少参数的存储量。同时本发明所提出的延时参数计算装置通过模式控制可以很方便的改变计算电路的结构使之使用于不同种类的探头。
附图说明
图1为本发明延时参数实时计算的多波束合成示意图;
图2为本发明凸阵探头延时计算的几何图形示意图;
图3为本发明线阵探头延时计算的几何图形示意图;
图4为本发明相控阵探头延时计算的几何图形示意图;
图5为本发明延时参数计算单元示意图;
图6为本发明采用并行方式的四波束延时参数计算单元示意图;
图7为本发明采用流水线方式的四波束延时参数计算单元示意图;
图8为本发明延时计算单元的四波束合成器示意图;
图9为本发明实时延时参数计算的多波束系统框图。
具体实施方式
下面根据附图和实施例对本发明作进一步详细说明:
图1是回波信号的动态延时电路图。经过模拟前端200和模数转换器300后的一路回波信号,通过隔直处理单元400,滤除低频分量,然后在写入控制器500的控制下由计数器产生线性的写地址,回波信号被连续地写入用于存储回波信号的双口RAM501中,然后由读出控制器502根据延时计算单元600的输出延时量产生RAM的读出地址,读出经过延时的回波信号。读出地址包含整数部分和小数部分,整数部分作为RAM的读出地址,小数部分作为用作读出信号的插值系数,以实现延时精度高于整数采样周期。本方案中采用2位二进制小数,经过插值单元以获得四分之一采样周期的延时精度。插值单元700的插值系数由读出控制器502给出。
本实施例的重点就是延时计算单元600的设计。延时计算单元600是根据当前通道对应的降元参数以及焦点位置参数实时计算出延时量,用来控制双口RAM501的读操作以及后面的插值运算。对于M路的波束合成,M路的延时参数分时的由延时参数计算单元600计算出来,然后依次从双口RAM501中读出经过延时了的回波数据。在回波数据进行插值单元700和加权单元800运算之后再进行波束合成,将各通道的回波信号进行叠加。在上述过程中,从双口RAM501读出到波束合成之后回波信号都是以分时复用的形式进行传输,当需要时再通过1-M分配器将一路回波信号分成M路回波信号,这样可以最大限度的减少硬件资源的占用率。
本实施例的多波束合成方案中最重要的是延时计算单元的实现。图2、图3、图4给出了各探头延时参数计算的几何示意图。在多波束的聚焦算法中,FPGA需要计算第i阵元到达接收焦点F的声程li,
针对不同探头的li的计算公式如下:
凸阵:λi=(R+L)2+R2-2(R+L)Rcos(θi-θr)]]>
线阵:λi=L2+(xi-xr)2]]>
相控阵:λi=xi2+L2-2xiLsinθr]]>
延时表示为:τi=(L-λi)c]]>
延时换算成采样脉冲单位:ni=(L-λi)cFs]]>
注:
1)R——曲率半径
2)L——焦距
3)θr——接收线与孔径中心发射线的夹角
4)θi——凸阵探头第i阵元与孔径中心发射线的夹角
5)xi——线阵或相控阵探头第i阵元距离孔径中心的间距
6)xr——线阵探头接收线与孔径中心的距离
7)c——声速,在人体组织中近似为1540m/s
针对上述三个计算公式,我们可以构造出一个通用的计算公式:
li=(L+X)2+(K2+K3)·Y]]>
按照这个通用的计算公式,我们只需要输入参数K2、K3、X、Y就能完成不同探头的声程计算,该计算方法需要一个开平方运算,两个乘法器和三个加法器,从而更有利于方案的FPGA实现。图5示出的电路结构可以用来计算凸阵探头、线阵探头以及相控阵探头的声程λi。图5中的输入参数L对应焦距。输入参数K2、K3、X、Y根据探头种类不同有不同的形式。表1给出了针对不同探头的输入参数形式。
表1:不同探头的输入参数形式
探头
K2
K3
X
Y
凸阵
L
R
0
2R(1-cos(θi-θr))
线阵
0
1
0
(xi-xr)2
相控阵
L
0
xi
-2xi(1+sinθr)
表1中的四个参数K2、K3、X、Y为输入参数,根据探头种类的不同,对四个输入参数进行相应配置,从而得出各种探头的声程。图5的方案中只有参数Y和波束有关,在采用流水线方式工作时,只需要Y根据不同波束进行切换便可以支持不同波束的分时复用。表1中的所有输入量的单位都是长度,因此实际计算要量化为脉冲单位,也即以脉冲周期数作为单位。具体算法是将所有输入量乘上量化因子Fs/c。这里Fs是采样频率,c是声速。为了保证计算精度,所有的量都保留3位二进制小数。
图6给出了改进方案的四波束延时参数计算并行实现方式的框图。图6中只有一个公共部分601,四个波束的延时参数输出分别对应着模块602、603、604、605。四个波束方位角相关的参数Y1、Y2、Y3、Y4分别输入给601、602、603、604。
图7给出了改进方案的四波束延时参数计算流水线工作方式的框图。图7中有一个公共部分601和一个波束计算部分602,和波束有关的参数Y1、Y2、Y3、Y4通过多路器606输入给模块602。多路器选择信号Y-SEL的切换频率是输入参数L变化的4倍。时钟信号CK和Y-SEL具有同样的频率。这样可以对于每一个焦距值,分别对四路波束计算延时参数。
图8给出了一个应用图7的四波束合成器的框图。在该图中,行波计数器100对采样脉冲进行计数,记录了超声波行进的路程,所以称做行波计数器。行波技术器的输出作为双口RAM200的写入地址。由于双口RAM的容量只要容纳写入和读出的最大地址差就够了,所以一般双口RAM的容量只需取256到512。写入地址和读出地址当计数到头时自动折叠到起始点,相当于一个环形存储队列。这里我们取RAM的深度为512,因此双口RAM200的写地址只需要连接行波计数器100的低9位。输入的回波数据rf_datai按照写入地址连续的写入双口RAM200。行波计数器的输出L。
作为深度的表示同时打入到延时参数计算单元300。延时单元在打入脉冲L_load作用下,将表示焦距的量L打入,L_load的频率为延时参数计算单元的时钟calc_clk的四分之一。也即在同一个焦距L下,分别对四个波束的延时计算一次。延时计算单元的输入参数K2、K3、X不随波束的切换而改变。与波束有关的输出参数Y对于四个波束分别标记为Y1、Y2、Y3、Y4。在4-1多路器310的控制下进行切换。由行波计数器100输出的波束选择信号beam_sel控制参数的选择。在参数Y1-Y4轮流输入的过程中,延时参数计算单元300以流水线方式计算每一个波束的延时参数,延时参数被轮流打入后面的寄存器组330,各寄存器分别表示为delay1 delay4。2-4译码器320译码beam_sel,产生的四路控制输出对delay1-delay4进行选择。delay1 delay4的值被最后一个打入脉冲的下降沿锁存到锁存器340,目的是为了保持delay1delay4的值在一个焦距变化周期内保持不变。delay1 delay4的值输入地址计算单元350,结合焦距L计算出对应的RAM读地址。在一个写入周期内,地址计算单元350必须分别对每一个波束计算读地址一次并从双口RAM中读出一个数据。因此,读出脉冲rd_clk的频率是写入脉冲wr_clk的四倍。如果wr_clk是40MHz,则rd_clk是160MHz。从双口RAM 200读出的数据被轮流打入寄存器210到240。由于插值的需要,还保留了历史数据在寄存器250到280中。保留的历史数据不限于只有两级。根据插值算法的阶数不同,可以保留多级。比如6阶插值,要保留6个连续的输出数据。读出的数据通过4-1多路器400输出到流水线方式的插值和加权单元500。插值加权单元的插值系数由地址计算单元350提供。加权数据wt可以计算的到,也可以事先计算好,存储在外存储器中,接受过程中实时从外存储器读入。由于加权值的变化不需要很快,比如25cm的扫描线改变64次,因此,保存加权值并不会占用太多存储资源。从插值加权计算单元500出来的数据已经是经过延时的并且分时复用的四波束回波数据。将此数据送往以流水线方式工作的求和单元600,和其他N-1个单元的输出一起求和,最后得到分时复用的四波束数据输出。
图9给出了一个基于延时参数实时计算的四波束合成B超系统框图。图9中的阵列换能器10为128阵元。波束合成器60一共有64个通道。发射电路50在控制器70的控制下对特定的一组阵元(成为激活阵元)发射具有延时的脉冲信号,以实现聚焦发射。激活阵元的回波信号经过模拟开关20的选通送往T/R开关30。T/R开关30的作用是隔离发射的高压信号避免造成后面的放大电路饱和阻塞。经过T/R开关30的模拟信号送往模拟前端电路40进行放大和处理,模拟前端包括了前置放大器、时间增益控制放大器(TGC)和ADC电路。经过放大的信号转换为数字信号送往波束合成器60。波束合成器是一个包含了64路如图8所示的电路结构。波束合成器60将64路输入信号进行延时。每一路输出四路经过延时的波束数据,四路数据以时分多路的形式送往求和单元61。求和单元61以流水线方式对四路波束数据进行合成。其输出为时分多路的四个合成后的波束数据。该数据流经过分配器(DEMUX)80分支为四路。分别送往四路正交解调单元81到84和信号处理单元85到89。最后形成的四条扫描线送给数字扫描转换器(DSC)90。数字扫描转换器90将扫描线数据转换为具有直角坐标的光栅数据,并通过读写控制器91送往图像缓冲存储器92。在控制器70的控制下,通知上位计算机73通过PCI总线读取图像数据并显示。控制数据也通过PCI总线下传到控制器70。用于聚焦延时计算的参数被存放在参数存储器71。在每次扫描开始前,控制器70将所有参数送往各个波束合成通道,并发出控制时序控制整个波束合成的进行。以图9中的实例,可以在保持图像线密度不减少的条件下,将B超系统的帧频提高4倍。这将大大提高B超对于人体内运动器官如心脏的成像质量。
本领域技术人员不脱离本发明的实质和精神,可以有多种变形方案实现本发明,以上所述仅为本发明较佳可行的实施例而已,并非因此局限本发明的权利范围,凡运用本发明说明书及附图内容所作的等效结构变化,均包含于本发明的权利范围之内。