以下に添付図面を参照しながら、本開示の好適な実施形態について詳細に説明する。尚、本明細書及び図面において、実質的に同一の機能を有する構成要素については、同一の符号を付することにより重複説明を省略する。
(第1の実施形態)
[超音波診断装置の全体構成]
以下、図4~図5を参照して、本実施形態に係る超音波診断装置の全体構成の一例について説明する。
図4は、本実施形態に係る超音波診断装置1の外観を示す図である。図5は、本実施形態に係る超音波診断装置1の全体構成を示すブロック図である。
本実施形態に係る超音波診断装置1は、装置本体100に超音波プローブ200が取り付けられて構成されている。尚、装置本体100と超音波プローブ200とは、ケーブルを介して電気的に接続されている。
超音波プローブ200は、装置本体100が有する送信処理部110(図5を参照して後述)で発生された電圧パルスを超音波ビームに変換して被検体内へ送信し、被検体内で反射した超音波エコーを受信して電気信号に変換し、装置本体100が有する受信処理部120(図5を参照して後述)へ出力する。
超音波プローブ200は、アレー状に配列された複数の圧電振動子210-T1~210-T1024、及び、複数の圧電振動子210-T1~210-T1024の駆動状態のオンオフを個別に切替制御するためのチャンネル切替部(図示せず)を有している。そして、これら複数の圧電振動子210-T1~210-T1024は、それぞれ、送信処理部110から供給される駆動信号(即ち、電圧パルス)に基づき被検体内に超音波を送信し、被検体内からの超音波エコーを受信して受信信号(即ち、電気信号)を生成する。
本実施形態に係る超音波プローブ200は、1024個の圧電振動子210-T1~210-T1024を有し、チャンネル切替部が切り替え制御されることにより、駆動対象の圧電振動子210-T1~210-T1024が256チャンネルの信号経路(送信処理部110及び受信処理部120に接続される信号経路)のいずれかに接続されることになる。尚、以下では、圧電振動子210-T1~210-T1024それぞれを区別しない場合には、「圧電振動子210」と略称する。
装置本体100は、送信処理部110、受信処理部120、制御部130、画像生成部140、表示部150、及び操作入力部160を備えている。
送信処理部110は、超音波プローブ200の各圧電振動子210に対して駆動信号たる電圧パルスを出力する送信回路である。送信処理部110は、チャンネル毎にパルス設定部を有しており、チャンネル毎に電圧パルスの電圧振幅、パルス幅、及びタイミングを設定可能になっている。
尚、送信処理部110は、制御部130の指令に基づいて、各圧電振動子210から出力される超音波が所定の送信フォーカス点に集束するように、各圧電振動子210に対して供給する駆動信号の遅延時間を変化させる。
受信処理部120は、超音波プローブ200の各圧電振動子210で生成された超音波エコーに係る受信信号を受信処理する受信回路である。受信処理部120は、各チャンネルの受信信号を整相加算することで複数チャンネルの受信信号を一つにまとめる(以下、「整相加算信号」と称する)と共に、当該整相加算信号にフィルタ処理を施して、後段の画像生成部140に出力する(以下、「受信ビームフォーマ」とも称する)。尚、受信処理部120の詳細は後述する。
制御部130は、超音波プローブ200または装置本体100のチャンネル切替部を制御して、駆動対象の複数の圧電振動子210を決定すると共に、送信処理部110及び受信処理部120を制御して、駆動対象の複数の圧電振動子210に対して超音波の送受信を実行させる。制御部130は、超音波プローブ200内の複数の圧電振動子210を順に駆動することにより、被検体内を超音波走査し、二次元状のフレームデータを生成する。
この際、制御部130は、例えば、超音波ビームの送信時に用いる圧電振動子210の数及び位置(即ち、送信開口)を制御することで、超音波ビームの送信位置及び送信方法を決定する。又、制御部130は、例えば、超音波エコーの受信時に用いる圧電振動子210の数及び位置(即ち、受信開口)を制御することで、超音波プローブ200にて受信される超音波エコーの位置を決定する。
又、制御部130は、超音波ビームの送信時には、被検体内に送信フォーカス点を設定して、当該送信フォーカス点に送信超音波が集束するように、送信処理部110の各チャンネルにおける遅延時間を制御する。又、制御部130は、超音波エコーの受信時には、被検体内に受信フォーカス点を設定して、当該受信フォーカス点からの超音波エコーにより生成される受信信号の位相が揃うように、受信処理部120の各チャンネルにおける遅延時間を制御する。
画像生成部140は、受信処理部120から出力される受信信号(整相加算信号)に基づいて、超音波画像(例えば、Bモード画像、カラードプラ画像、三次元超音波画像)を生成する。尚、超音波画像を生成する際の処理の内容は、公知の手法と同様であるため、ここでの説明は省略する。画像生成部140は、例えば、対数圧縮処理、検波処理、又はFFT解析処理等を行った上で、超音波画像を生成してもよい。
表示部150は、例えば、液晶ディスプレイ等であって、画像生成部140が生成した超音波画像を表示する。
操作入力部160は、例えば、キーボード又はマウス等であって、操作者が入力した操作信号を取得する。
[受信処理部の構成]
以下、図6、図7、図8A、図8B、図9を参照して、本実施形態に係る受信処理部120の構成の詳細について、説明する。
図6は、本実施形態に係る受信処理部120の構成を示す図である。図7は、本実施形態に係る受信処理部120における処理を模式的に示す図である。尚、図7では、説明の便宜として、互いに隣接する3チャンネル(ここでは、ch1、ch2及びch3)の受信信号を整相加算する処理を示している。
本実施形態に係る受信処理部120の各構成は、典型的には、ASIC(Application Specific Integrated Circuit)やFPGA(Field-Programmable Gate Array)等で構成されたデジタル演算回路によって実現される。但し、これらの一部又は全部は、DSP(Digital Signal Processor)、CPU(Central Processing Unit)、またはGPGPU(General-Purpose Graphics Processing Units)等がプログラムに従って演算処理することによって実現されてもよい(例えば、後述する第7の実施形態を参照)。
受信処理部120は、例えば、AD変換部10-ch1~10-ch256、遅延処理部20-ch1~20-ch256、加算処理部30、及び、フィルタ処理部40を備えている。
AD変換部10-ch1~10-ch256及び遅延処理部20-ch1~20-ch256は、従来技術に係る受信ビームフォーマと同様に、チャンネル毎に設けられており、ここでは、256個のAD変換部10-ch1~10-ch256、及び、256個の遅延処理部20-ch1~20-ch256が設けられている。尚、AD変換部10-ch1~10-ch256は、それぞれ、同様の構成を有し、いずれのチャンネルの構成かを特に区別しない場合には、「AD変換部10」と略称する。又、遅延処理部20-ch1-ch1~20-ch256は、それぞれ、同様の構成を有し、いずれのチャンネルの構成かを特に区別しない場合には、「遅延処理部20」と略称する。
AD変換部10は、各圧電振動子210が生成した受信信号をアナログ信号からデジタル信号に変換する。そして、AD変換部10は、受信信号のサンプルデータ(即ち、デジタル信号)を、順次、遅延処理部20に出力する。
遅延処理部20は、前段のAD変換部10から入力される受信信号を、時系列に、自身のメモリ(例えば、FIFOメモリ又はSRAM)に記憶する。そして、遅延処理部20は、自身のメモリに格納した受信信号に、制御部130から指令された遅延時間を施して、後段の加算処理部30に出力する。
遅延処理部20による遅延処理は、従来公知のダイナミック受信ビームフォーミング方式と同様である。遅延処理部20の遅延時間は、チャンネル毎に制御部130によって制御されており、その遅延時間は、例えば、受信フォーカス点から各圧電振動子210への超音波エコーの伝搬時間に基づいて、各圧電振動子210が当該超音波エコーにより生成する受信信号の位相が揃うように、制御される。そして、ダイナミック受信ビームフォーミング方式においては、制御部130は、図2を参照して説明したように、超音波を一回送信する毎に、被検体内の深度方向に沿って、複数の受信フォーカス点を設定し、当該複数の受信フォーカス点それぞれにあわせて遅延時間を時間的に変化させる。
但し、本実施形態に係る遅延処理部20は、自身のメモリに記憶された時間的に連続する二以上のサンプルデータ(以下、「サンプル群」と称する)を一回の遅延処理の単位として、当該サンプル群の二以上のサンプルデータそれぞれを、同一の遅延時間だけ遅延させて加算処理部30に出力する。
本実施形態に係る遅延処理部20は、図7に示すように、超音波エコーの一つの波形が収まる程度の連続するサンプルデータ(例えば、図7の区間L1、区間L2、又は、区間L3のサンプルデータ)を一括して、同一の遅延時間だけ遅延させる。これによって、遅延処理部20における遅延処理に起因して、受信信号の波形に時間的歪が生じることを抑制する。
そして、各チャンネルの遅延処理部20から出力されるサンプル群(以下、「遅延サンプル群」とも称する)に係る複数のサンプルデータは、それぞれの位相毎に、加算処理部30によって加算処理が施され、それぞれの位相毎の整相加算信号として、並列に、フィルタ処理部40に出力される。これによって、超音波エコーの一つ一つの波形の形状を保ったまま、フィルタ処理部40にて、当該波形毎にフィルタ処理を施すことが可能となる(図9を参照して後述)。
遅延処理部20が一括して出力する遅延サンプル群のサンプル数は、遅延処理部20-ch1~20-ch256のそれぞれで同一のサンプル数に設定され、より好適には、超音波エコーの一つの波形が収まるように、5~50に設定される。尚、当該サンプル数は、典型的には、後段のフィルタ処理部40が、出力信号を生成する際に必要とする入力サンプル数以下である。
ここでは、説明の便宜として、遅延処理部20が出力する遅延サンプル群を、遅延処理部20のメモリに格納された時系列のサンプルデータのうち、時間的に連続するDa(t)、Da(t+1)及びDa(t+2)の3サンプルとする。ここでは、Da(t)、Da(t+1)、Da(t+2)の順に、位相が遅れたデータを表し、以下では、tを第1位相、t+1を第2位相、t+2を第3位相とも称する。
図8Aは、本実施形態に係る遅延処理部20の構成を示す図である。図8Bは、本実施形態に係る遅延処理部20のメモリ20a、20b、20c内のデータ構成を示す図である。尚、ここでは、遅延処理部20-ch1~20-ch256は、それぞれ、共通の構成であるため、一個の遅延処理部20の構成のみを示す。
遅延処理部20は、例えば、並列に設けられた複数のメモリ(ここでは、3つのメモリ)20a、20b、20cを含んで構成される。ここで、メモリ20a、20b、20cは、いずれも、AD変換部10から入力される受信信号を時系列に記憶するメモリである。
遅延処理部20は、AD変換部10から入力される受信信号と同期するように、メモリ20a、20b、20cそれぞれに対して、書き込みアドレスを付帯した書き込み指令信号SWを入力し、当該メモリ20a、20b、20cそれぞれに対して、同一の受信信号(例えば、図8BのサンプルデータD1~D7)を記憶する。そして、遅延処理部20は、メモリ20a、20b、20cへの受信信号の書き込みと同期するように、メモリ20a、20b、20cそれぞれに対して、読み出しアドレスを付帯した読み出し指令信号SR1、SR2、SR3を入力し、順次、メモリ20a、20b、20cそれぞれからの読み出しを行う。このとき、遅延処理部20は、メモリ20a、20b、20cそれぞれから、時間的に連続するサンプルデータを読み出すように、メモリ20aから遅延サンプル群の第1位相に対応するサンプルデータDa(t)(図8Bでは、サンプルデータD1)を読み出し、メモリ20bから遅延サンプル群の第2位相に対応するサンプルデータDa(t+1)(図8Bでは、サンプルデータD2)を読み出し、メモリ20cから遅延サンプル群の第3位相に対応するサンプルデータDa(t+2)(図8Bでは、サンプルデータD3)を読み出す。
これによって、遅延処理部20は、AD変換部10から入力される受信信号と同期するように、順次、遅延サンプル群を加算処理部30に出力する。遅延処理部20は、例えば、第1時刻で、サンプルデータD1~D3を出力し、第1時刻に続く第2時刻で、サンプルデータD2~D4を出力する。
尚、遅延処理部20による遅延処理は、従来公知の手法と同様であり、例えば、当該遅延処理部20から読み出すサンプルデータと他の遅延処理部20から読み出すサンプルデータとの間におけるアドレス間隔によって制御される。但し、遅延処理部20による遅延処理の手法は、任意であり、受信信号を遅延処理部20のメモリへ書き込むタイミングを制御する手法や、デジタルフィルタにより遅延制御する手法が用いられてもよい。又、遅延処理部20は、その他、AD変換部10から入力される連続する二つのサンプルデータ間にデータ補間を行った上で、加算処理部30にサンプルデータを出力してもよい。
図9は、本実施形態に係る加算処理部30の構成を示す図である。
加算処理部30には、各チャンネルの遅延処理部20から出力された遅延サンプル群が、サンプルデータの位相毎に、並列に入力されている。ここでは、加算処理部30には、各チャンネルの遅延サンプル群の第1位相に対応するサンプルデータDa(t)-ch1~Da(t)-ch256、遅延サンプル群の第2位相に対応するサンプルデータDa(t+1)-ch1~Da(t+1)-ch256、及び、遅延サンプル群の第3位相に対応するサンプルデータDa(t+2)-ch1~Da(t+2)-ch256が、並列に入力されている(図9中では、256チャンネルの遅延処理部20のうち、一部のみを示している)。
尚、各チャンネルの遅延処理部20から出力される遅延サンプル群(及び当該遅延サンプル群に含まれる各サンプルデータ)は、当該遅延処理部20の遅延処理により、互いに位相が揃ったものとなっている。
加算処理部30は、各チャンネルの遅延処理部20から入力される遅延サンプル群の複数のサンプルデータを、当該複数のサンプルデータの位相毎(ここでは、第1位相、第2位相、及び第3位相毎)に加算する。そして、加算処理部30は、位相毎の整相加算信号を、並列に後段のフィルタ処理部40に出力する。
尚、以下では、加算処理部30が生成する位相毎の整相加算信号のうちの一つの整相加算信号を「加算サンプル」と称し、加算処理部30が生成する全位相分の加算サンプルをまとめて「加算サンプル群」とも称する。
加算処理部30は、例えば、図9に示すように、遅延処理部20-ch1から入力される遅延サンプル群と遅延処理部20-ch2から入力される遅延サンプル群とを加算するための構成として、第1位相加算部30aa、第2位相加算部30ab、及び第3位相加算部30acによって構成されるチャンネル加算部30aを有している。そして、チャンネル加算部30aは、第1位相加算部30aaにて、サンプルデータDa(t)-ch1とサンプルデータDa(t)-ch2とを加算し、第2位相加算部30abにて、サンプルデータDa(t+1)-ch1とサンプルデータDa(t+1)-ch2とを加算し、第3位相加算部30acにて、サンプルデータDa(t+2)-ch1とサンプルデータDa(t+2)-ch2とを加算する。
又、加算処理部30は、チャンネル加算部30aと同様の構成を有するチャンネル加算部を、チャンネル毎に有し、各チャンネルの遅延処理部20から入力される遅延サンプル群のサンプルデータを、位相毎に加算する。
加算処理部30は、かかる構成によって、各チャンネルの遅延サンプル群の第1位相に係るサンプルデータDa(t)-ch1~Da(t)-ch256を加算して、第1位相に係る加算サンプルDb(t)を生成する。又、各チャンネルの遅延サンプル群の第2位相に係るサンプルデータDa(t+1)-ch1~Da(t+1)-ch256を加算して、第2位相に係る加算サンプルDb(t+1)を生成する。又、各チャンネルの遅延サンプル群の第3位相に係るサンプルデータDa(t+2)-ch1~Da(t+2)-ch256を加算して、第3位相に係る加算サンプルDb(t+2)を生成する。
フィルタ処理部40は、例えば、FIR(Finite Impulse Response)フィルタによって構成される。フィルタ処理部40には、加算処理部30にて生成される加算サンプル群の各位相の加算サンプル(ここでは、Db(t)、Db(t+1)、及びDb(t+2))が並列に入力され、フィルタ処理部40は、これらに基づいて、出力信号Dc(t)を生成する。そして、フィルタ処理部40は、当該出力信号Dc(t)を画像生成部140に出力する。
フィルタ処理部40は、例えば、図9に示すように、加算処理部30が出力する加算サンプルDb(t)、Db(t+1)、Db(t+2)と所定のフィルタ係数c1、c2、c3とを乗算する乗算器40a、40b、40c、及び、乗算器40a、40b、40cそれぞれから出力される値を加算して、出力信号Dc(t)を生成する加算器40tを含んで構成される。
ここでは、乗算器40aは、加算処理部30から入力される加算サンプルDb(t)とフィルタ係数c1とを乗算して、加算部40tに出力する。乗算器40bは、加算処理部30から入力される加算サンプルDb(t+1)とフィルタ係数c2とを乗算して、加算部40tに出力する。乗算器40cは、加算処理部30から入力される加算サンプルDb(t+2)とフィルタ係数c3とを乗算して、加算部40tに出力する。加算部40tは、乗算器40a、乗算器40b、及び乗算器40cそれぞれから出力される値を加算して、一つの出力信号Dc(t)を生成する。
尚、フィルタ処理部40の各乗算器40a、40b、40cに設定されるフィルタ係数c1、c2、c3は、要求されるフィルタ特性(例えば、超音波エコーの受信信号から抽出する波形の周波数帯域)に応じて決定される。
本実施形態に係る受信処理部120は、図7を参照して上記したように、以下のように動作する。
各チャンネルの受信信号は、当該チャンネルに接続されたAD変換部10にてデジタル信号に変換され、当該チャンネルに接続された遅延処理部20のメモリに時系列に記憶される。そして、当該受信信号は、遅延処理部20にて、当該チャンネルに設定された遅延時間だけ遅延させられて、加算処理部30に出力される。
このとき、当該受信信号は、遅延処理の度に、遅延処理部20のメモリから、時間的に連続する二以上のサンプルデータ(遅延サンプル群)が一括して取り出される。この際、遅延サンプル群に含まれる二以上のサンプルデータは、同一の遅延時間だけ遅延させられた上で、加算処理部30に入力される。そして、各チャンネルの遅延サンプル群は、加算処理部30にて、遅延サンプル群のサンプルデータの位相毎に整相加算され、位相毎の整相加算信号(加算サンプル群)に変換される。そして、位相毎の整相加算信号は、フィルタ処理部40に並列に入力され、一つの出力信号に変換されて、後段の画像生成部140に出力される。
本実施形態に係る受信処理部120は、AD変換部10における受信信号のAD変換処理と同期するように、かかる受信処理を連続的に実行する。
[効果]
以上のように、本実施形態に係る受信ビームフォーマ120は、複数の遅延処理部20それぞれが、自身のメモリに記憶された時間的に連続する二以上のサンプルデータからなる遅延サンプル群を一回の遅延処理の単位として、遅延サンプル群の二以上のサンプルデータそれぞれを、同一の遅延時間だけ遅延させて後段に出力し、加算処理部30が、複数の遅延処理部20それぞれから出力される遅延サンプル群を、サンプルデータの位相毎に加算して、位相毎の整相加算信号を、後段のフィルタ処理部40に出力する。
従って、本実施形態に係る受信ビームフォーマ120によれば、ダイナミック受信ビームフォーミング方式における遅延処理によって受信信号(即ち、整相加算信号)に時間的歪が生じることを抑制することができる。これによって、時間的歪が生じていない整相加算信号を用いて、後段の信号処理部(例えば、フィルタ処理部40)にて、フィルタ処理等を行うことができるため、空間分解能の向上、及び超音波画像の画像解像度の向上を図ることができる。
尚、本実施形態に係る受信ビームフォーマ120は、チャンネル毎に個別の信号処理フィルタを挿入した場合と比較して、少ない回路規模で、時間的歪を抑制した信号処理の実現が可能になる点でも好適である。
(変形例1)
上記した遅延処理部20の構成は、種々に変形可能である。
図10Aは、変形例1に係る遅延処理部20の構成を示す図である。図10Bは、本変形例1に係る遅延処理部20のメモリ20d内のデータ構成を示す図である。
変形例1に係る遅延処理部20は、AD変換部10から入力される受信信号を時系列に記憶するメモリ20d、メモリ20dに読み出し指令信号を順番に入力する選択回路20e、及び、メモリ20dから読み出すサンプルデータDa(t)、Da(t+1)、Da(t+2)のアドレスを順番に切り替える切替回路20fを含んで構成される。
変形例1に係る遅延処理部20においては、選択回路20e及び切替回路20fを動作させるクロック信号としては、AD変換部10から入力される受信信号のクロックよりも、高速な動作クロック信号が用いられている。具体的には、ここでは、AD変換部10から入力される受信信号のクロックの3倍のクロック周波数を有する動作クロック信号が用いられている。
遅延処理部20は、AD変換部10から入力される受信信号と同期するように、メモリ20dに書き込み指令信号SWを入力し、当該メモリ20dに対して、時系列に受信信号を記憶させる。そして、遅延処理部20は、選択回路20eに対して、遅延サンプル群の各位相に対応するアドレス(ここでは、Da(t)、Da(t+1)、Da(t+2)に対応するアドレス)を指定する読み出し指令信号SR1、SR2、SR3を順次入力し、選択回路20eからは、動作クロック信号に応じて、メモリ20dに対して入力する読み出し指令信号をSR1、SR2、SR3の順に切り替える。これによって、メモリ20dからは、AD変換部10から1つのサンプルデータが入力される間に、3つのサンプルデータ(図10Bでは、サンプルデータD1、サンプルデータD2、及びサンプルデータD3)が読み出されることになる。
又、遅延処理部20は、切替回路20fに対して、動作クロック信号を入力し、メモリ20dから出力される遅延サンプル群の各位相に対応するサンプルデータDa(t)、Da(t+1)、Da(t+2)の出力先を順番に切り替える。これによって、メモリ20dから読み出された3つのサンプルデータ(図10Bでは、サンプルデータD1、サンプルデータD2、及びサンプルデータD3)は、順番に、加算処理部30の第1位相加算部30aa、第2位相加算部30ab、又は第3位相加算部30acのいずれかに順番に切り替えされることになる。
以上のように、本変形例1に係る遅延処理部20によれば、一つのメモリ20dにて、遅延サンプル群の複数のサンプルデータを、並列に、加算処理部30に対して出力することができる。
(変形例2)
図11Aは、変形例2に係る遅延処理部20の構成を示す図である。図11Bは、本変形例2に係る遅延処理部20のメモリ20gとキャッシュメモリ20i内のデータ構成を示す図である。
変形例2に係る遅延処理部20は、AD変換部10から入力される受信信号を時系列に記憶するメモリ20g、メモリ20gからの出力を一時記憶するキャッシュメモリ20i、メモリ20gとキャッシュメモリ20iとの間に介在する乗算器20h、及び、メモリ20gとキャッシュメモリ20iの読み出し動作を制御する読み出し制御部20jを含んで構成される。
ここで、キャッシュメモリ20iは、例えば、遅延サンプル群として加算処理部30に出力するサンプルデータ(ここでは、サンプルデータD1、D2、D3)を一時的に記憶する。変形例2に係る遅延処理部20は、このキャッシュメモリ20iに、遅延サンプル群の各位相に対応するサンプルデータD1、D2、D3を一時記憶させ、キャッシュメモリ20iから、当該サンプルデータDa(t)、Da(t+1)、Da(t+2)を、並列に、加算処理部30に出力させる。
遅延処理部20は、AD変換部10から入力される受信信号と同期するように、メモリ20gに書き込み指令信号SWを入力し、当該メモリ20gに対して、時系列に受信信号(サンプルデータ)を記憶させる。そして、遅延処理部20は、読み出し制御部20jに対して、読み出し対象となるアドレスを指定する読み出し指令信号SR1、SR2、SR3を順次入力する。これにより、読み出し制御部20jは、メモリ20gから、指令信号SR1に対応するサンプルデータ(図11Bでは、D1)、指令信号SR2に対応するサンプルデータ(図11Bでは、D2)、及び、指令信号SR3に対応するサンプルデータ(図11Bでは、D3)を順番に読み出し、キャッシュメモリ20iに出力させる。
又、読み出し制御部20jは、読み出し指令信号SR1、SR2、SR3それぞれに対応するように、キャッシュメモリ20iの書き込みアドレスを指定して、メモリ20gから出力されるサンプルデータを、キャッシュメモリ20iの複数(ここでは、3つ)の記憶領域のいずれかに各別に記憶させる。この際、読み出し制御部20jは、メモリ20gから入力されるサンプルデータを古いサンプルデータに上書きするように、キャッシュメモリ20iの3つの記憶領域のうち、記憶させる対象の記憶領域を順次切り替える。
そして、読み出し制御部20jは、キャッシュメモリ20iに記憶された複数(ここでは、3つ)のサンプルデータそれぞれを出力する出力先(例えば、加算処理部30の第1位相加算部30aa、第2位相加算部30ab、又は第3位相加算部30acのいずれか)を、当該サンプルデータの位相に対応するように、順次切り替える。つまり、読み出し制御部20jは、キャッシュメモリ20iから、3つのサンプルデータのうち、位相が最先のサンプルデータをDa(t)として出力させ、位相が2番目のサンプルデータをDa(t+1)として出力させ、位相が最後のサンプルデータをDa(t+2)として出力させる。
尚、乗算器20hは、メモリ20gからキャッシュメモリ20iに出力されるサンプルデータに対して、Aperture(開口幅)や又はApodization Gainに対応する重み係数を乗じた上で、当該サンプルデータを、キャッシュメモリ20iに格納するための構成である。これによって、後段の処理における演算回数を軽減することができる。
(第2の実施形態)
次に、図12A、図12Bを参照して、第2の実施形態に係る受信処理部120の構成について説明する。
本実施形態に係る受信処理部120は、遅延処理部20が、データを間引きながら、自身のメモリに格納された時系列のサンプルデータから遅延サンプル群を取得する点で、第の実施形態に係る受信処理部120と相違する。換言すると、本実施形態に係る遅延処理部20は、サンプルデータがメモリに記憶されるレートよりも小さいレートで、加算処理部30に対してサンプルデータを出力する構成とされている。尚、第1の実施形態と共通する構成については、説明を省略する(以下、他の実施形態についても同様)。
図12Aは、第1の実施形態に係る受信処理部120の構成を模式的に示す図である。図12Bは、第2の実施形態に係る受信処理部120の構成を模式的に示す図である。尚、図12A、図12Bでは、AD変換部10の図示を省略している。
第1の実施形態に係る受信処理部120においては、遅延処理部20は、自身のメモリから遅延サンプル群を取得する際、取得対象のサンプルデータを、時系列のサンプルデータから1サンプルデータずつ順番にシフトさせる態様を示した。この際には、遅延処理部20は、例えば、AD変換部10のサンプリング周波数と同じ周波数のクロック信号CLK1で動作する。そのため、遅延処理部20は、例えば、クロック信号CLK1に従って、t=1のクロックタイミングでサンプルデータD1~D3を取得し、t=1のクロックタイミングに続くt=2のクロックタイミングでサンプルデータD2~D4を取得し、t=2のクロックタイミングに続くt=3のクロックタイミングでサンプルデータD3~D5を取得する。
そして、第1の実施形態に係る加算処理部30及びフィルタ処理部40は、遅延処理部20と同様に、クロック信号CLK1で動作し、フィルタ処理部40からは、サンプリング周波数と同じ周波数で出力信号Dc(1)、Dc(2)、Dc(3)・・・が順番に出力されることになる。換言すると、第1の実施形態においては、加算処理部30及びフィルタ処理部40は、AD変換部10のサンプリング周波数と同じ周波数で動作するように、構成する必要がある。
本実施形態に係る受信処理部120においては、加算処理部30及びフィルタ処理部40の演算負荷の軽減、及び消費電力の低減の観点から、遅延処理部20は、データを間引きながら、自身のメモリに格納された時系列のサンプルデータから遅延サンプル群を取得する。
本実施形態に係る遅延処理部20は、例えば、AD変換部10のサンプリング周波数に対応するクロック信号CLK1を1/2分周したクロック信号CLK2に従って動作し、サンプルデータを1個ずつ間引きながら、自身のメモリに格納された時系列のサンプルデータから遅延サンプル群を取得する。遅延処理部20は、クロック信号CLK1を基準とすると、例えば、t=1のクロックタイミングでサンプルデータD1~D3を取得し、t=1のクロックタイミングに続くt=2のクロックタイミングではデータを取得せず、t=2のクロックタイミングに続くt=3のクロックタイミングでサンプルデータD3~D5を取得する。
これにより、本実施形態に係る受信処理部120においては、加算処理部30及びフィルタ処理部40を、サンプリング周波数のクロック信号CLK1を1/2分周したクロック信号CLK2で動作させることができる。そして、フィルタ処理部40からは、クロック信号CLK2に従って、サンプリング周波数の1/2分周の周期で出力信号Dc(1)、Dc(3)・・・を順番に出力することになる。
以上のように、本実施形態に係る超音波診断装置1によれば、加算処理部30及びフィルタ処理部40における単位時間当たりの処理の回数を低減することができる。これによって、加算処理部30及びフィルタ処理部40の演算負荷を軽減すると共に、消費電力を低減することが可能である。
本実施形態に係る超音波診断装置1は、特に、AD変換部10におけるサンプリング周波数が、フィルタ処理部40から出力する出力信号に要求される周波数よりも大きい場合に好適である。
尚、上記実施形態では、遅延処理部20がデータを間引く量を、サンプルデータ1つ分としたが、遅延処理部20がサンプルデータを間引く量は、必要とする出力信号の周波数に応じて任意の量に設定し得る。又、遅延処理部20、加算処理部30及びフィルタ処理部40の動作周波数は、必ずしもAD変換部10のサンプリング周波数と同期する周波数でなくともよい。
(第3の実施形態)
次に、図13、図14を参照して、第3の実施形態に係る受信処理部120の構成について説明する。
本実施形態に係る受信処理部120は、フィルタ処理部40のフィルタ係数が小さい位相の演算経路においては、加算処理部30の処理及びフィルタ処理部40の処理を実行しない構成とする点で、第1の実施形態に係る受信処理部120と相違する。
図13は、第3の実施形態に係る受信処理部120の構成を示す図である。
図13では、フィルタ処理部40に設定されるフィルタ係数c1~c3のうち、加算サンプル群のうち加算サンプルDb(t+1)が入力される乗算器40bに設定されたフィルタ係数c2が、ゼロに設定された状態を示している。このように、フィルタ係数が小さい信号経路においては、加算サンプルDb(t+1)の値がフィルタ処理部40の出力信号の値に与える影響は小さく、加算処理部30において各チャンネルのサンプルデータDa(t+1)-ch1~Da(t+1)-ch256を加算する処理、及び、フィルタ処理部40において加算サンプルDb(t+1)とフィルタ係数c2を乗算する処理は、無用である。従って、かかる態様においては、演算負荷の軽減、及び消費電力の軽減の観点から、これらの処理を省略した方が望ましい。
尚、フィルタ処理部40のフィルタ係数は、フィルタ処理部40にて抽出する超音波エコーの波形の周波数帯域に応じて変更される。又、当該フィルタ係数は、被検体内の受信フォーカス点の深さ位置に応じて、設定変更される(図19を参照して後述)。かかる観点から、加算処理部30及びフィルタ処理部40は、その時々における各乗算器40a~40cに設定されるフィルタ係数に基づいて、各位相における演算処理を実行するか否かを決定すればよい。
図14は、フィルタ処理部40がローパスフィルタとして用いられた場合における、フィルタ処理部40の各乗算器に設定されるフィルタ係数の一例を示す図である。
図14は、フィルタ次数が「15」の態様(即ち、フィルタ処理部40に入力される加算サンプル群のサンプル数が15個とされ、フィルタ処理部40に15個の乗算器が設けられた態様)において、各乗算器に設定されるフィルタ係数を示している。図14では、横軸が「15」のフィルタ次数のうちのいずれのフィルタ次数かを表し、縦軸がフィルタ係数の大きさを表している。
図14では、2番目、4番目、6番目、10番目、12番目、及び14番目の次数のフィルタ係数は、ゼロと設定されている。加算処理部30及びフィルタ処理部40は、この場合には、2番目、4番目、6番目、10番目、12番目、及び14番目のフィルタ次数に対応する位相の加算処理及び乗算処理を実行しないことになる。
以上のように、本実施形態に係る受信処理部120は、フィルタ処理部40のフィルタ係数が小さい位相の演算経路においては、加算処理部30の処理及びフィルタ処理部40の処理を実行しない構成とする。これによって、演算負荷の軽減、及び消費電力の軽減を図ることができる。
(第4の実施形態)
次に、図15~図18を参照して、第4の実施形態に係る受信処理部120の構成について説明する。本実施形態に係る受信処理部120は、時間的に連続する第1時刻及び第2時刻それぞれの遅延処理のときに生成された加算サンプルに基づいて、フィルタ処理部40に対して、時間的に連続する複数の位相の加算サンプルを並列に出力するフィルタ入力選択部50を備える点で、第1の実施形態に係る受信処理部120と相違する。
図15、図16は、第4の実施形態に係る受信処理部120の構成を示す図である。図17は、フィルタ入力選択部50がフィルタ処理部40に対して並列に出力する加算サンプルを示す図である。図18は、第4の実施形態に係るフィルタ処理部40に設定されるフィルタ係数を示す図である。
フィルタ入力選択部50(本発明の「入力信号選択部」に相当する)は、加算処理部30にて生成された位相毎の加算サンプルのデータを時系列に記憶するFIFO型メモリを含んで構成される。かかるFIFO型メモリは、例えば、第1位相の加算サンプルDb(t)を時系列に記憶する第1位相メモリA1_1~A1_5、第2位相の加算サンプルDb(t+1)を時系列に記憶する第2位相メモリA2_3~A2_5、及び、第3位相の加算サンプルDb(t+2)を時系列に記憶する第3位相メモリA3_3~A3_5を含んで構成される。
尚、第1位相メモリA1_1~A1_5には、例えば、t=kのタイミングに生成された加算サンプルDb(t)からt=k+4のタイミングに生成された加算サンプルDb(t)までが記憶され、第2位相メモリA2_3~A2_5には、t=k+2のタイミングに生成された加算サンプルDb(t+1)からt=k+4のタイミングに生成された加算サンプルDb(t+1)までが記憶され、第3位相メモリA3_3~A3_5には、t=k+2のタイミングに生成された加算サンプルDb(t+2)からt=k+4のタイミングに生成された加算サンプルDb(t+2)までが記憶されている。
フィルタ入力選択部50は、フィルタ処理部40において演算処理を実行する各タイミングにおいて、フィルタ処理部40に対して、メモリA1_1、A1_2、A1_3、A2_3、A3_3、A3_4、及びA3_5それぞれに記憶された加算サンプルDb(k)~Db(k+6)を出力する。ここで、メモリA1_1、A1_2、A1_3、A2_3、A3_3、A3_4、及びA3_5から出力される加算サンプルDb(k)~Db(k+6)は、図17に示すように、時間的に連続する7個の位相の加算サンプルに相当する。
本実施形態に係るフィルタ処理部40は、例えば、7入力1出力のFIRフィルタを構成する。具体的には、本実施形態に係るフィルタ処理部40は、フィルタ入力選択部50から出力される加算サンプルDb(k)~Db(k+6)それぞれに対応する7個の乗算器40a~40gを有し、7個の乗算器40a~40gそれぞれにて、加算サンプルDb(k)~Db(k+6)とフィルタ係数c1~c7との乗算を行う。そして、加算器40tは、7個の乗算器40a~40gそれぞれの出力値を、加算して、出力信号Dc(t)を生成する。
尚、本実施形態に係るフィルタ処理部40は、異なる遅延時間が設定された加算サンプルを用いることになるため、多少の時間的歪が発生するおそれがある。例えば、図17では、メモリA1_1、A1_2に記憶された加算サンプル、及びメモリA3_4、A3_5に記憶された加算サンプルに時間的歪が含まれることになる。
そこで、本実施形態に係るフィルタ入力選択部50は、フィルタ係数の小さい乗算器(例えば、図18の1番目~2番目、及び6番目~7番目のフィルタ次数の乗算器)を、時間的歪が含まれる加算サンプルと乗算する乗算器に当てることにより、その影響を抑える構成としている。
以上のように、本実施形態に係る受信処理部120においては、フィルタ入力選択部50により、加算処理部30にて生成される加算サンプル群のサンプル数よりも多くの個数の時間的に連続する加算サンプルを生成することを可能とする。これによって、加算処理部30の個数を増加させることなく、フィルタ処理部40のフィルタ次数(即ち、入力要素数)を大きくすることができる。
(第5の実施形態)
次に、図19を参照して、第5の実施形態に係る受信処理部120の構成について説明する。本実施形態に係る受信処理部120は、フィルタ処理部40のフィルタ係数が、被検体内の受信フォーカス点の深度に応じて設定変化される点で、第1の実施形態に係る受信処理部120と相違する。
図19は、第5の実施形態に係るフィルタ処理部40の構成を模式的に示す図である。
フィルタ処理部40として好適なフィルタ特性は、被検体内の深さ位置に応じて変化し、典型的には、被検体内の受信フォーカス点が浅い場合には、高周波数帯域側の信号が透過し、被検体内の受信フォーカス点が深い場合には、低周波数帯域側の信号が透過するのが望ましい。
かかる観点から、本実施形態に係るフィルタ処理部40の各乗算器40a~40cに設定されるフィルタ係数c1~c3は、受信フォーカス点の深度に基づいて、時間的に設定変更される。当該フィルタ係数c1~c3は、例えば、制御部130からの指令に基づいて設定される。
尚、フィルタ処理部40の各乗算器40a~40cに設定するフィルタ係数c1~c3は、例えば、受信フォーカス点の深さ位置と関連付けて、予め制御部130の記憶部(例えば、ROM)に記憶されている。
以上のように、本実施形態に係る受信処理部120によれば、被検体内からの超音波エコーを、より効率的に抽出することができる。
(第6の実施形態)
次に、図20、図21を参照して、第6の実施形態に係る受信処理部120の構成について説明する。本実施形態に係る受信処理部120は、遅延処理部20のメモリに記憶されたサンプルデータをオーバーサンプリングした上で、加算処理部30にて加算処理を行う点で、第1の実施形態に係る受信処理部120と相違する。
図20、図21は、第6の実施形態に係る受信処理部120の構成を模式的に示す図である。尚、図20には、加算処理部30の一つの位相加算部(第1位相加算部)30aaの構成のみを示している。
本実施形態に係る受信処理部120は、遅延処理部20から出力する各サンプルデータを、進み位相側のデータと遅れ位相側のデータの2個に複製して、加算処理部30にて、進み位相側のデータと遅れ位相側のデータとで、それぞれ、別個に加算する(図21を参照)。そして、フィルタ処理部40は、2倍に複製された加算サンプル(例えば、Db(t)-0、Db(t)-1、Db(t+1)-0、Db(t+1)-1、Db(t+2)-0、及びDb(t+2)-1)それぞれを並列な入力として、フィルタ処理を行う。
本実施形態に係るオーバーサンプリングの手法は、従来公知のゼロ挿入型のオーバーサンプリング手法と同様である(例えば、特許文献2を参照)。
例えば、本実施形態に係る加算処理部30は、一つの位相加算部(図20では、位相加算部30aaのみを示す)毎に、AD変換部10のサンプリング周波数の2倍の周波数のクロック信号(以下、「小数遅延指令信号」と称する)に従って動作する第1選択部31、第2選択部32及び第3選択部33を有している。
第1選択部31は、小数遅延指令信号に基づいて、前のチャンネルからの進み位相側の加算サンプル(図20では、Db(t)-0”)又は前のチャンネルからの遅れ位相側の加算サンプル(図20では、Db(t)-1”)のいずれかを選択出力する。又、第2選択部32は、小数遅延指令信号に基づいて、位相加算部30aaから出力される加算結果又は前のチャンネルからの進み位相側の加算サンプル(図20では、Db(t)-0”)を選択出力する。又、第3選択部33は、小数遅延指令信号に基づいて、位相加算部30aaから出力される加算結果又は前のチャンネルからの遅れ位相側の加算サンプル(図20では、Db(t)-1”)を選択出力する。
小数遅延指令信号が「0」の場合には、第1選択部31は、前のチャンネルからの進み位相側の加算サンプル(例えば、Db(t)-0”)を選択して、位相加算部30aaに出力する。位相加算部30aaは、当該加算サンプル(例えば、Db(t)-0”)と遅延処理部20から出力されるサンプルデータ(例えば、Da(t))とを加算して、第2選択部32及び第3選択部33に出力する。第2選択部32は、その加算結果を、進み位相側の加算サンプルDb(t)-0”として、次のチャンネルに出力する。又、この際、第3選択部33は、前のチャンネルからの遅れ位相側の加算サンプルDb(t)-1”を、そのまま次のチャンネルに出力する。
一方、小数遅延指令信号が「1」の場合には、第1選択部31は、前のチャンネルからの遅れ位相側の加算サンプル(例えば、Db(t)-1”)を選択して、位相加算部30aaに出力する。位相加算部30aaは、当該加算サンプル(例えば、Db(t)-1”)と遅延処理部20から出力されるサンプルデータ(例えば、Da(t))とを加算して、第2選択部32及び第3選択部33に出力する。第3選択部33は、その加算結果を、遅れ位相側の加算サンプルDb(t)-1”として、次のチャンネルに出力する。又、この際、第2選択部32は、前のチャンネルからの進み位相側の加算サンプルDb(t)-0”を、そのまま次のチャンネルに出力する。
以上のように、本実施形態に係る受信処理部120によれば、フィルタ処理部40に入力する整相加算信号をオーバーサンプリングすることが可能であり、これによって、フィルタ処理部40のフィルタ次数を増加させることができる。
(第7の実施形態)
次に、図22、図23、図24を参照して、第7の実施形態に係る超音波診断装置1の構成について説明する。本実施形態に係る超音波診断装置1は、受信処理部120の機能が、処理装置300によるソフトウェアにより実現されている点で、第1の実施形態に係る超音波診断装置1と相違する。
図22は、第7の実施形態に係る処理装置300のハードウェア構成を模式的に示す図である。
処理装置300は、読み取り回路310、プロセッサ320、メモリ330、及び表示回路340等を備えている。
読み取り回路310は、AD変換部10等によって構成され、各圧電振動子210から出力される受信信号をアナログ信号がデジタル信号に変換し、時系列にメモリ330に格納する。
プロセッサ320は、受信処理プログラム(例えば、処理装置300が有するROMに格納されている)に従って、メモリ330に記憶された受信信号に係るサンプルデータに対して、整相加算処理及びフィルタ処理等の演算処理を施す。そして、プロセッサ320は、これらによって生成された被検体内の各位置における情報(例えば、信号強度)に基づいて、超音波画像を生成し、表示回路340を介して、当該超音波画像を表示部150に表示させる。
図23は、本実施形態に係る処理装置300が実行する処理を示すフローチャートを示す図である。図24は、図23のステップS3のサブルーチン処理のフローチャートを示す図である。
処理装置300は、まず、1回の送信ビームを送信した際に、読み取り回路310にて取得される受信信号(サンプルデータ)を、順次、メモリ330に順次記憶する(ステップS1)。
次に、処理装置300は、フィルタ処理後の一つの出力サンプルを出力するため、ステップSA1~SA2のサブルーチン処理を行う。このサブルーチン処理内においては、処理装置300は、まず、受信フォーカス点を決定する(ステップS2)。次に、処理装置300は、ステップS2で決定された受信フォーカス点について、後述する図24に示すサブルーチン処理にて、位相毎の整相加算信号(加算サンプル群)を算出する(ステップS3)。次に、処理装置300は、ステップS3で算出された位相毎の加算サンプルに基づいて、フィルタ処理(例えば、FIRフィルタの処理)を実行し、これによって、一つの出力サンプルを出力する(ステップS4)。そして、処理装置300は、ステップSA1に戻って、次の出力サンプルを出力する処理を実行する。
ステップS3においては、フィルタ処理に入力する位相毎の整相加算信号(加算サンプル群)を生成するために、チャンネル毎に、ステップSB1~SB2のサブルーチン処理を行う。このサブルーチン処理内においては、処理装置300は、まず、ステップS2で決定された受信フォーカス点に基づいて、対象とするチャンネルの遅延量を算出する(ステップS3a)。次に、処理装置300は、ステップS3aで算出された遅延量に基づいて、メモリ330内における読み出しアドレスを算出する(ステップS3b)。次に、処理装置300は、メモリ330内から、ステップS3bで決定された読み出しアドレスの時間的に連続する二以上のサンプルデータ(遅延サンプル群)を取得する(ステップS3c)。次に、処理装置300は、各チャンネルの遅延サンプル群を、位相毎に蓄積(即ち、加算)する(ステップS3d)。そして、処理装置300は、ステップSB1に戻って、次のチャンネルの受信信号についても、同様の処理を行い、位相毎の整相加算信号(加算サンプル)を順次、蓄積(即ち、加算)する。
以上のように、本実施形態に係る超音波診断装置1によれば、ソフトウェアにより、受信処理を実現することが可能である。本実施形態に係る超音波診断装置1は、受信処理部120の機能を容易に実現することができるため、特に、ソフトウェアの実行速度が十分速い場合に好適である。
(その他の実施形態)
本発明は、上記実施形態に限らず、種々に変形態様が考えられる。
上記実施形態では、加算処理部30から出力される加算サンプル群を、フィルタ処理部40に並列に入力して、フィルタ処理部40にてフィルタ処理を施す態様を示した。しかしながら、これに代えて、加算処理部30から出力される加算サンプル群を、周波数解析部に並列に入力する態様とされてもよい。
又、上記実施形態では、フィルタ処理部40の一例としてFIRフィルタを用いる態様を示したが、これに代えて、IIR(Infinite impulse response)フィルタが用いられてもよい。
又、上記実施形態に係る超音波診断装置1は、Bモード画像、カラードプラ画像、三次元超音波画像、又はMモード画像等の任意の超音波画像を生成するものであってよい。
又、上記実施形態に係る超音波プローブ200としては、コンベックスプローブ、リニアプローブ、セクタプローブ、又は三次元プローブ等の任意のものを用いることができる。
以上、本発明の具体例を詳細に説明したが、これらは例示にすぎず、請求の範囲を限定するものではない。請求の範囲に記載の技術には、以上に例示した具体例を様々に変形、変更したものが含まれる。